<SEC-DOCUMENT>0001437749-23-030902.txt : 20231108
<SEC-HEADER>0001437749-23-030902.hdr.sgml : 20231108
<ACCEPTANCE-DATETIME>20231108144806
ACCESSION NUMBER:		0001437749-23-030902
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		63
CONFORMED PERIOD OF REPORT:	20230930
FILED AS OF DATE:		20231108
DATE AS OF CHANGE:		20231108

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			ALPHA PRO TECH LTD
		CENTRAL INDEX KEY:			0000884269
		STANDARD INDUSTRIAL CLASSIFICATION:	ORTHOPEDIC, PROSTHETIC & SURGICAL APPLIANCES & SUPPLIES [3842]
		IRS NUMBER:				631030494
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		53 WELLINGTON STREET EAST
		CITY:			AURORA
		STATE:			A6
		ZIP:			L4G 1H6
		BUSINESS PHONE:		9054790654

	MAIL ADDRESS:	
		STREET 1:		53 WELLINGTON STREET EAST
		CITY:			AURORA
		STATE:			A6
		ZIP:			L4G 1H6

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	BFD INDUSTRIES INC
		DATE OF NAME CHANGE:	19930328
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>apt20230930_10q.htm
<DESCRIPTION>FORM 10-Q
<TEXT>
<XBRL>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:naics="http://xbrl.sec.gov/naics/2023" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:us-types="http://fasb.org/us-types/2017-01-31" xmlns:srt-types="http://fasb.org/srt-types/2017-01-31" xmlns:utreg="http://www.xbrl.org/2009/utr" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:us-roles="http://fasb.org/us-roles/2017-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2023" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:thunderdome="http://www.RDGFilings.com" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:apt="http://www.alphaprotech.com/20230930" xmlns:rr="http://xbrl.sec.gov/rr/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:currency="http://xbrl.sec.gov/currency/2023" xmlns:sic="http://xbrl.sec.gov/sic/2023" xmlns:exch="http://xbrl.sec.gov/exch/2023" xmlns:country="http://xbrl.sec.gov/country/2023" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21"><head>
	<title>apt20230930_10q.htm</title>


	<!-- Generated by ThunderDome Portal - 11/8/2023 6:57:33 PM -->
<meta http-equiv="Content-Type" content="text/html" /></head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;"><div style="display: none;"><ix:header><ix:hidden>
<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:DocumentFiscalPeriodFocus">Q3</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:DocumentFiscalYearFocus">2023</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:CurrentFiscalYearEndDate">--12-31</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:AmendmentFlag">false</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityCentralIndexKey">0000884269</ix:nonNumeric>
<ix:nonFraction id="c935" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:FinanceLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c755" contextRef="d_2023-01-01_2023-09-30" unitRef="Pure" name="us-gaap:NumberOfOperatingSegments" scale="0" format="ixt:numdotdecimal" decimals="INF">2</ix:nonFraction>
<ix:nonFraction id="c624" contextRef="d_2022-01-01_2022-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c623" contextRef="d_2023-01-01_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c612" contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="apt:NumberOfStoresRented" scale="0" format="ixt:numdotdecimal" decimals="INF">1</ix:nonFraction>
<ix:nonFraction id="c611" contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="apt:NumberOfStoresOwned" scale="0" format="ixt:numdotdecimal" decimals="INF">3</ix:nonFraction>
<ix:nonFraction id="c610" contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="us-gaap:NumberOfStores" scale="0" format="ixt:numdotdecimal" decimals="INF">4</ix:nonFraction>
<ix:nonFraction id="c549" contextRef="d_2023-01-01_2023-09-30" unitRef="Pure" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c77" contextRef="i_2022-12-31" unitRef="USDPerShare" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" format="ixt:numdotdecimal" decimals="INF">0.01</ix:nonFraction>
<ix:nonFraction id="c76" contextRef="i_2023-09-30" unitRef="USDPerShare" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" format="ixt:numdotdecimal" decimals="INF">0.01</ix:nonFraction></ix:hidden>
<ix:references>
<link:schemaRef xlink:href="apt-20230930.xsd" xlink:type="simple"></link:schemaRef></ix:references>
<ix:resources>
<xbrli:context id="d_2023-01-01_2023-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2023-09-30_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:LitigationCaseAxis">apt:LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-06-07_2022-06-07_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:LitigationCaseAxis">apt:LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-06-07</xbrli:startDate><xbrli:endDate>2022-06-07</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="Pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2023-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="Year"><xbrli:measure>utr:Y</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_StatementGeographicalAxis-CA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_StatementGeographicalAxis-CA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_StatementGeographicalAxis-CA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_StatementGeographicalAxis-CA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="USDPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit>
<xbrli:unit id="Share"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2023-01-01_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_InvestmentTypeAxis-HarmonyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">apt:HarmonyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="SquareFoot"><xbrli:measure>utr:sqft</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingOfBuildingProductsMember_StatementGeographicalAxis-IN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">apt:ManufacturingOfBuildingProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-SewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">apt:SewingProprietaryDisposableProtectiveApparelMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">apt:ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingBuildingProductsMember_StatementGeographicalAxis-IN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">apt:ManufacturingBuildingProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-MapleIndustriesAndAssociatesMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis">apt:MapleIndustriesAndAssociatesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2005-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-AlphaProTechEngineeredProductsMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis">apt:AlphaProTechEngineeredProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2005-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_AwardTypeAxis-EmployeeStockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-09-30_PlanNameAxis-IncentivePlan2020Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-09-30_PlanNameAxis-IncentivePlan2020Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_RestructuringPlanAxis-IncentivePlan2020Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2020-01-01_2020-12-31_PlanNameAxis-The2004PlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:The2004PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_PlanNameAxis-The2004PlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:The2004PlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-09-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-09-30_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-06-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-06-30_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-04-01_2022-06-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-07-01</xbrli:startDate><xbrli:endDate>2023-09-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-06-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-06-30_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-04-01_2023-06-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-RelatedPartyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-RelatedPartyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-09-30</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-11-01"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-11-01</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="NonApplicable"><xbrli:measure>thunderdome:item</xbrli:measure></xbrli:unit>
<ix:relationship linkRole="http://www.xbrl.org/2003/role/link" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" toRefs="f851eaa6b-caee-4674-9074-d3fe2a1d033f" fromRefs="c91 c89 c87 c85 c83 c72 c70 c68 c66 c64 c62 c60 c56 c54 c52 c50 c48 c46 c44 c42 c40 c38 c36 c32"></ix:relationship></ix:resources>
</ix:header></div>
<div>&#xa0;</div>

<div class="null">
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">UNITED STATES</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">SECURITIES AND EXCHANGE COMMISSION</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">WASHINGTON, DC 20549</p>

<hr style="text-align: center; height: 1px; color: #000000; background-color: #000000; width: 25%; border: none; margin: 3pt auto" />
<p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">FORM <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:DocumentType" id="c2">10-Q</ix:nonNumeric></p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&#xa0;</p>

<hr style="text-align: center; height: 1px; color: #000000; background-color: #000000; width: 25%; border: none; margin: 3pt auto" />
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:DocumentQuarterlyReport" id="c3" format="ixt-sec:boolballotbox">&#x2612;</ix:nonNumeric> QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">For the quarterly period ended <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:DocumentPeriodEndDate" id="c4" format="ixt:datemonthdayyearen">September 30, 2023</ix:nonNumeric></p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">OR</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:DocumentTransitionReport" id="c5" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric> TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">For the transition period from&#xa0; &#xa0; &#xa0; to</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><span style="text-decoration: underline; ">Commission File No. <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityFileNumber" id="c6">001-15725</ix:nonNumeric></span></p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityRegistrantName" id="c7">Alpha Pro Tech, Ltd.</ix:nonNumeric></span></p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">(Exact Name of Registrant as Specified in Its Charter)</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<table cellpadding="0" cellspacing="0" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 100%; margin-left: 0pt; margin-right: 0pt;">

		<tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityIncorporationStateCountryCode" id="c8" format="ixt-sec:stateprovnameen">Delaware</ix:nonNumeric>, U.S.A.</span></p>
			</td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityTaxIdentificationNumber" id="c9">63-1009183</ix:nonNumeric></span></p>
			</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">(State or Other Jurisdiction of Incorporation or Organization)</p>
			</td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">(I.R.S. Employer Identification No.)</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;"><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityAddressAddressLine1" id="c10">53 Wellington Street East</ix:nonNumeric></td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityAddressPostalZipCode" id="c11">L4G 1H6</ix:nonNumeric></span></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityAddressCityOrTown" id="c12">Aurora</ix:nonNumeric>, <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityAddressStateOrProvince" id="c13" format="ixt-sec:stateprovnameen">Ontario</ix:nonNumeric>, <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityAddressCountry" id="c14" format="ixt-sec:countrynameen">Canada</ix:nonNumeric></span></td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">(Zip Code)</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">(Address of Principal Executive Offices)</td>
			<td style="vertical-align: top; width: 50%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center;">&#xa0;</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Registrant&#x2019;s telephone number, including area code: (<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:CityAreaCode" id="c15">905</ix:nonNumeric>) <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:LocalPhoneNumber" id="c16">479-0654</ix:nonNumeric></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Securities registered pursuant to Section 12(b) of the Act:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;">

		<tbody><tr>
			<td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 30.8%; border-top: 1px solid rgb(0, 0, 0); border-left: 1px solid rgb(0, 0, 0); text-align: justify;">Title of each class</td>
			<td style="border-width: 1px; border-style: solid; border-color: rgb(0, 0, 0); vertical-align: top; width: 32.4%; text-align: justify;">Trading Symbol(s)</td>
			<td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 42.3%; border-right: 1px solid rgb(0, 0, 0); border-top: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Name of each exchange on which registered</p>
			</td>
		</tr>
		<tr>
			<td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 30.8%; border-left: 1px solid rgb(0, 0, 0);">
			<p style="text-align: justify; margin: 0pt; font-size: 10pt; font-family: Times New Roman;"><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:Security12bTitle" id="c17">Common Stock</ix:nonNumeric>,</p>

			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">$0.01 par value</p>
			</td>
			<td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 32.4%; border-right: 1px solid rgb(0, 0, 0); border-left: 1px solid rgb(0, 0, 0); text-align: justify;"><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:TradingSymbol" id="c18">APT</ix:nonNumeric></td>
			<td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 42.3%; border-right: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;"><ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:SecurityExchangeName" id="c19" format="ixt-sec:exchnameen">NYSE American</ix:nonNumeric></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Indicate by check mark whether the registrant: (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days. <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityCurrentReportingStatus" id="c20">Yes</ix:nonNumeric> &#x2612; No &#x2610;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (&#xa7;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityInteractiveDataCurrent" id="c21">Yes</ix:nonNumeric> &#x2612; No &#x2610;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of &#x201c;large accelerated filer,&#x201d; &#x201c;accelerated filer,&#x201d; &#x201c;smaller reporting company,&#x201d; and &#x201c;emerging growth company&#x201d; in Rule 12b-2 of the Exchange Act.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Large accelerated filer &#x2610;&#xa0;&#xa0; Accelerated filer &#x2610;&#xa0;&#xa0; <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityFilerCategory" id="c22" format="ixt-sec:entityfilercategoryen">Non-accelerated filer</ix:nonNumeric> &#x2612;&#xa0;&#xa0; Smaller reporting company <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntitySmallBusiness" id="c23" format="ixt-sec:boolballotbox">&#x2612;</ix:nonNumeric></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Emerging growth company <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityEmergingGrowthCompany" id="c24" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">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. &#x2610;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act). Yes <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="dei:EntityShellCompany" id="c25" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric> No &#x2612;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Indicate the number of shares outstanding of each of the issuer&#x2019;s classes of common stock, as of the latest practicable date.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tbody><tr>
			<td style="width: 30%; text-align: center; border-bottom: 1px solid rgb(0, 0, 0);">Class</td>
			<td style="width: 4%; text-align: center;">&#xa0;</td>
			<td style="width: 30%; text-align: center; border-bottom: 1px solid rgb(0, 0, 0);">Outstanding November 1, 2023</td>
			<td style="width: 36%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 30%; text-align: center;">Common Stock, $0.01 par value</td>
			<td style="width: 4%; text-align: center;">&#xa0;</td>
			<td style="width: 30%; text-align: center;"><ix:nonFraction id="c26" contextRef="i_2023-11-01" unitRef="Share" name="dei:EntityCommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">11,647,096</ix:nonFraction> shares</td>
			<td style="width: 36%;">&#xa0;</td>
		</tr>

</tbody></table>

<p style="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM">&#xa0;</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink">&#xa0;</div>
</div>
</div>
</div>

<p style="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&#xa0;</p>
</div>

<div>&#xa0;</div>

<div>&#xa0;</div>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Index</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tbody><tr>
			<td colspan="2" style="width: 6%;">&#xa0;</td>
			<td style="width: 5%;">page</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">PART I.</td>
			<td style="width: 89%;">FINANCIAL INFORMATION</td>
			<td style="width: 5%;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">ITEM 1.</td>
			<td style="width: 89%;">Financial Statements</td>
			<td style="width: 5%;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">Condensed Consolidated Balance Sheets (Unaudited)</td>
			<td style="width: 5%; text-align: right;">1</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">Condensed Consolidated Statements of Income (Unaudited)</td>
			<td style="width: 5%; text-align: right;">2</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">Condensed Consolidated Statements of Comprehensive Income (Unaudited)</td>
			<td style="width: 5%; text-align: right;">3</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">Condensed Consolidated Statements of Shareholders&#x2019; Equity (Unaudited)</td>
			<td style="width: 5%; text-align: right;">4</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">Condensed Consolidated Statements of Cash Flows (Unaudited)</td>
			<td style="width: 5%; text-align: right;">5</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">Notes to Condensed Consolidated Financial Statements (Unaudited)</td>
			<td style="width: 5%; text-align: right;">6</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">ITEM 2.</td>
			<td style="width: 89%;">Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations</td>
			<td style="width: 5%; text-align: right;">15</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">ITEM 3.</td>
			<td style="width: 89%;">Quantitative and Qualitative Disclosures about Market Risk</td>
			<td style="width: 5%; text-align: right;">22</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">ITEM 4.</td>
			<td style="width: 89%;">Controls and Procedures</td>
			<td style="width: 5%; text-align: right;">22</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">PART II.</td>
			<td style="width: 89%;">OTHER INFORMATION</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">ITEM I.</td>
			<td style="width: 89%;">Legal Proceedings</td>
			<td style="width: 5%; text-align: right;">23</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">ITEM IA.</td>
			<td style="width: 89%;">Risk Factors</td>
			<td style="width: 5%; text-align: right;">23</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">ITEM 2.</td>
			<td style="width: 89%;">Unregistered Sales of Equity Securities and Use of Proceeds</td>
			<td style="width: 5%; text-align: right;">23</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="width: 6%;">ITEM 6.</td>
			<td style="width: 89%;">Exhibits</td>
			<td style="width: 5%; text-align: right;">25</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="width: 6%;">&#xa0;</td>
			<td style="width: 89%;">&#xa0;</td>
			<td style="width: 5%; text-align: right;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td colspan="2" rowspan="1" style="width: 6%;">SIGNATURES</td>
			<td style="width: 5%; text-align: right;">26</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td colspan="2" style="width: 6%;">&#xa0;</td>
			<td style="width: 5%;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td colspan="2" style="width: 6%;">EXHIBITS</td>
			<td style="width: 5%;">&#xa0;</td>
		</tr>

</tbody></table>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM">&#xa0;</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<div>&#xa0;</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"><b>&#xa0;PART I. FINANCIAL INFORMATION</b></p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>ITEM 1. FINANCIAL STATEMENTS</b></p>

<div>&#xa0;</div>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Condensed Consolidated Balance Sheets (Unaudited)</b></p>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="null">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><b><b><b>September 30,</b></b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022 (1)</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 70%;"><b>Assets</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Current assets:</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Cash and cash equivalents</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c31" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" format="ixt:numdotdecimal" decimals="0">18,163,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c32" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" format="ixt:numdotdecimal" decimals="0">16,290,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt; text-indent: -9pt;">Accounts receivable, net of allowance for doubtful accounts of $<ix:nonFraction id="c33" contextRef="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">35,000</ix:nonFraction> as of September 30, 2023 and $<ix:nonFraction id="c34" contextRef="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">45,000</ix:nonFraction> as of December 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c35" contextRef="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">7,448,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c36" contextRef="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">5,382,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accounts receivable, related party</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c37" contextRef="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-RelatedPartyMember" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">992,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c38" contextRef="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-RelatedPartyMember" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">1,591,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Inventories</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c39" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">21,526,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c40" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">24,397,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Prepaid expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c41" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:PrepaidExpenseCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">4,558,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c42" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:PrepaidExpenseCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">4,902,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Total current assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c43" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:AssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">52,687,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c44" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:AssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">52,562,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Property and equipment, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c45" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="0">5,543,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c46" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="0">5,742,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Goodwill</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c47" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:Goodwill" scale="0" format="ixt:numdotdecimal" decimals="0">55,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c48" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:Goodwill" scale="0" format="ixt:numdotdecimal" decimals="0">55,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Definite-lived intangible assets, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c49" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c50" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="0" format="ixt:numdotdecimal" decimals="0">1,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Right-of-use assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c51" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">1,210,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c52" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">1,725,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Equity investment in unconsolidated affiliate</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c53" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" scale="0" format="ixt:numdotdecimal" decimals="0">5,116,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c54" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" scale="0" format="ixt:numdotdecimal" decimals="0">4,718,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Total assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c55" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:Assets" scale="0" format="ixt:numdotdecimal" decimals="0">64,611,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c56" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:Assets" scale="0" format="ixt:numdotdecimal" decimals="0">64,803,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>Liabilities and Shareholders' Equity</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Current liabilities:</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accounts payable</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c59" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:AccountsPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">320,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c60" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:AccountsPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">674,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accrued liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c61" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">885,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c62" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">833,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Lease liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c63" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">777,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c64" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">899,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Total current liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c65" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:LiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">1,982,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c66" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:LiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">2,406,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Lease liabilities, net of current portion</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c67" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">474,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c68" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">875,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred income tax liabilities, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c69" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="0" format="ixt:numdotdecimal" decimals="0">764,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c70" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="0" format="ixt:numdotdecimal" decimals="0">764,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Total liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c71" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:Liabilities" scale="0" format="ixt:numdotdecimal" decimals="0">3,220,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c72" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:Liabilities" scale="0" format="ixt:numdotdecimal" decimals="0">4,045,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">Commitments and contingincies</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Shareholders' equity:</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt; text-indent: -9pt;">Common stock, $<span style="-sec-ix-hidden:c76"><span style="-sec-ix-hidden:c77">.01</span></span> par value: <ix:nonFraction id="c78" contextRef="i_2023-09-30" unitRef="Share" name="us-gaap:CommonStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF"><ix:nonFraction id="c79" contextRef="i_2022-12-31" unitRef="Share" name="us-gaap:CommonStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF">50,000,000</ix:nonFraction></ix:nonFraction> shares authorized; <ix:nonFraction id="c80" contextRef="i_2023-09-30" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">11,636,446</ix:nonFraction> and <ix:nonFraction id="c81" contextRef="i_2022-12-31" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,226,306</ix:nonFraction> shares outstanding as of September 30, 2023 and December 31, 2022, respectively</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c82" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:CommonStockValue" scale="0" format="ixt:numdotdecimal" decimals="0">117,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c83" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:CommonStockValue" scale="0" format="ixt:numdotdecimal" decimals="0">123,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Retained earnings</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c84" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" format="ixt:numdotdecimal" decimals="0">62,757,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c85" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" format="ixt:numdotdecimal" decimals="0">62,124,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accumulated other comprehensive loss</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c86" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,483,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c87" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,489,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Total shareholders' equity</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c88" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">61,391,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c89" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">60,758,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Total liabilities and shareholders' equity</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c90" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">64,611,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c91" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">64,803,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</div>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">(1) <ix:footnote xml:lang="en-us" id="f851eaa6b-caee-4674-9074-d3fe2a1d033f">The condensed consolidated balance sheet as of December 31, 2022, has been prepared using information from the audited consolidated balance sheet as of that date.</ix:footnote></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">See accompanying Notes to Condensed Consolidated Financial Statements (Unaudited).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">1</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>

<div>&#xa0;</div>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Condensed Consolidated Statements of Income (Unaudited)</b></p>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="null">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>For the Three Months Ended</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>September 30,</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c94" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">16,053,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c95" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">14,722,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c96" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">45,967,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c97" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">49,756,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Cost of goods sold, excluding depreciation and amortization</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c98" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="0">10,018,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c99" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="0">9,904,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c100" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="0">28,844,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c101" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="0">32,884,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Gross profit</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c102" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="0">6,035,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c103" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="0">4,818,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c104" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="0">17,123,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c105" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="0">16,872,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Operating expenses:</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Selling, general and administrative</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c107" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">4,387,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c108" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">3,970,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c109" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">13,275,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c110" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">12,341,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Depreciation and amortization</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c111" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">225,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c112" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">201,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c113" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">687,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c114" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">641,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 48.1%; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Total operating expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c115" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:OperatingExpenses" scale="0" format="ixt:numdotdecimal" decimals="0">4,612,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c116" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:OperatingExpenses" scale="0" format="ixt:numdotdecimal" decimals="0">4,171,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c117" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:OperatingExpenses" scale="0" format="ixt:numdotdecimal" decimals="0">13,962,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c118" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:OperatingExpenses" scale="0" format="ixt:numdotdecimal" decimals="0">12,982,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Income from operations</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c119" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,423,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c120" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">647,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c121" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,161,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c122" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,890,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">Other income (loss):</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Loss on fixed assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c125" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="apt:GainLossOnFixedAssetsNonoperating" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c126" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="apt:GainLossOnFixedAssetsNonoperating" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c127" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="apt:GainLossOnFixedAssetsNonoperating" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c128" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="apt:GainLossOnFixedAssetsNonoperating" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">490,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Equity in income (loss) of unconsolidated affiliate</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c129" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">180,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c130" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">13,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c131" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">392,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c132" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">87,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Interest income, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c133" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="0" format="ixt:numdotdecimal" decimals="0">222,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c134" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="0" format="ixt:numdotdecimal" decimals="0">28,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c135" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="0" format="ixt:numdotdecimal" decimals="0">549,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c136" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="0" format="ixt:numdotdecimal" decimals="0">39,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Total other income (loss)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c137" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">402,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c138" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">15,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c139" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">941,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c140" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">364,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Income before provision for income taxes</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c141" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeLossAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">1,825,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c142" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeLossAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">662,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c143" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeLossAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">4,102,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c144" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeLossAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">3,526,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="padding: 0pt 0pt 0pt 36pt;">&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Provision for income taxes</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c145" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">395,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c146" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">159,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c147" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">974,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c148" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">808,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c149" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,430,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c150" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">503,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c151" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,128,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c152" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">2,718,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Basic earnings per common share</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c153" contextRef="d_2023-07-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.12</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c154" contextRef="d_2022-07-01_2022-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.04</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c155" contextRef="d_2023-01-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.26</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c156" contextRef="d_2022-01-01_2022-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.21</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Diluted earnings per common share</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c157" contextRef="d_2023-07-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.12</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c158" contextRef="d_2022-07-01_2022-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.04</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c159" contextRef="d_2023-01-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.26</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c160" contextRef="d_2022-01-01_2022-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.21</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Basic weighted average common shares outstanding</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c161" contextRef="d_2023-07-01_2023-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">11,781,071</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c162" contextRef="d_2022-07-01_2022-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">12,615,187</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c163" contextRef="d_2023-01-01_2023-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">11,974,336</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c164" contextRef="d_2022-01-01_2022-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">12,834,505</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Diluted weighted average common shares outstanding</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c165" contextRef="d_2023-07-01_2023-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">11,781,071</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c166" contextRef="d_2022-07-01_2022-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,688,381</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c167" contextRef="d_2023-01-01_2023-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">11,974,336</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c168" contextRef="d_2022-01-01_2022-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,909,870</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</div>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">See accompanying Notes to Condensed Consolidated Financial Statements (Unaudited).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">2</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>

<div>&#xa0;</div>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Condensed Consolidated Statements of Comprehensive Income (Unaudited)</b></p>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="null">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>For the Three Months Ended</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>September 30,</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c171" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,430,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c172" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">503,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c173" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,128,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c174" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">2,718,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 39.2%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Other comprehensive income (loss)- foreign currency translation gain (loss)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c175" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">152,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c176" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">137,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c177" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" scale="0" format="ixt:numdotdecimal" decimals="0">6,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c178" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">554,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Comprehensive income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c179" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0">1,278,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c180" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0">366,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c181" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0">3,134,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c182" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0">2,164,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</div>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">See accompanying Notes to Condensed Consolidated Financial Statements (Unaudited).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">3</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>

<div>&#xa0;</div>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Condensed Consolidated Statements of Shareholders</b>&#x2019;<b> Equity (Unaudited)</b></p>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin: 0pt 0pt 0pt 18pt;"><b>For the Nine Months Ended September 30, 2023</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="null">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Accumulated</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Additional</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Other</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Common Stock</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Paid-in</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Retained</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Comprehensive</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Shares</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Capital</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Earnings</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Income (Loss)</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Total</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 28%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance as of December 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c185" contextRef="i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,226,306</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c186" contextRef="i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">123,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c187" contextRef="i_2022-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c188" contextRef="i_2022-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">62,124,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">(<ix:nonFraction id="c189" contextRef="i_2022-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,489,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c190" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">60,758,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c194" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">552,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c195" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c196" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">552,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Common stock repurchased and retired</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c197" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" scale="0" format="ixt:numdotdecimal" decimals="INF">200,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c198" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">2,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c199" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">371,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c200" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">460,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c201" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:zerodash" decimals="0" sign="-">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c202" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">833,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Stock-based compensation expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c205" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">22,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c207" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c208" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">22,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Options exercised</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c209" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">109,250</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c210" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">1,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">349,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c212" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c213" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c214" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">350,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total comprehensive income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c216" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c217" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c218" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c219" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">137,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c220" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">137,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance as of March 31, 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c221" contextRef="i_2023-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,135,556</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c222" contextRef="i_2023-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">122,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c223" contextRef="i_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c224" contextRef="i_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">62,216,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c225" contextRef="i_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,352,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c226" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">60,986,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c230" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,146,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c231" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c232" contextRef="d_2023-04-01_2023-06-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,146,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Common stock repurchased and retired</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c233" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" scale="0" format="ixt:numdotdecimal" decimals="INF">275,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c234" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">3,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c235" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">65,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c236" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">1,029,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c237" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:zerodash" decimals="0" sign="-">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c238" contextRef="d_2023-04-01_2023-06-30" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">1,097,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Treasury stock excise tax</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c241" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">11,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c244" contextRef="d_2023-04-01_2023-06-30" unitRef="USD" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">11,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Stock-based compensation expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c247" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">22,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c248" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c249" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c250" contextRef="d_2023-04-01_2023-06-30" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">22,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Options exercised</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c251" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">15,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c253" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">54,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c255" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c256" contextRef="d_2023-04-01_2023-06-30" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">54,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total comprehensive income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c258" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c259" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c260" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c261" contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">21,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c262" contextRef="d_2023-04-01_2023-06-30" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">21,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr class="q2qselectedlineitem" style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td class="q2qselectedlineitem" style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance as of June 30, 2023</p>
			</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c263" contextRef="i_2023-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">11,875,556</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c264" contextRef="i_2023-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">119,000</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c265" contextRef="i_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c266" contextRef="i_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">62,333,000</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c267" contextRef="i_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,331,000</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c268" contextRef="i_2023-06-30" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">61,121,000</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c272" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,430,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c273" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c274" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,430,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Common stock repurchased and retired</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c275" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" format="ixt:numdotdecimal" decimals="-1">249,110</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c276" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:numdotdecimal" decimals="-3">2,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c277" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:numdotdecimal" decimals="-3">41,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c278" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:numdotdecimal" decimals="-3">1,006,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c279" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:zerodash" decimals="0" sign="-">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c280" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:numdotdecimal" decimals="-3">1,049,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Treasury stock excise tax</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c283" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">19,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c286" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">19,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Stock-based compensation expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c289" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">24,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c290" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c291" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c292" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">24,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Options exercised</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c293" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">10,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c295" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">36,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c297" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c298" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">36,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total comprehensive loss</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c300" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c301" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c302" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c303" contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">152,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c304" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">152,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance as of September 30, 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c305" contextRef="i_2023-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" format="ixt:numdotdecimal" decimals="0">11,636,446</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c306" contextRef="i_2023-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3">117,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c307" contextRef="i_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c308" contextRef="i_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3">62,757,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c309" contextRef="i_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" sign="-">1,483,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c310" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3">61,391,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</div>

<p style="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin: 0pt 0pt 0pt 18pt;"><b>For the Nine Months Ended September 30, 2022</b></p>

<p style="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&#xa0;</p>

<div class="null">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Accumulated</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Additional</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Other</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Common Stock</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Paid-in</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Retained</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Comprehensive</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Shares</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Capital</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Earnings</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Loss</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Total</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Balance as of December 31, 2021</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c313" contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,115,341</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c314" contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">132,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c315" contextRef="i_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c316" contextRef="i_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">62,488,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">(<ix:nonFraction id="c317" contextRef="i_2021-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">869,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c318" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">61,751,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c322" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,522,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c323" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c324" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,522,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Common stock repurchased and retired</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c325" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" scale="0" format="ixt:numdotdecimal" decimals="INF">170,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c326" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">2,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c327" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">55,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c328" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">699,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c329" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:zerodash" decimals="0" sign="-">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c330" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">756,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Stock-based compensation expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c333" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">55,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c335" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c336" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">55,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total comprehensive loss</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c338" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c339" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c340" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c341" contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">153,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c342" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">153,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Balance as of March 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c343" contextRef="i_2022-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,945,341</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c344" contextRef="i_2022-03-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">130,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c345" contextRef="i_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c346" contextRef="i_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">63,311,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c347" contextRef="i_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,022,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c348" contextRef="i_2022-03-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">62,419,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c352" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">693,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c353" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c354" contextRef="d_2022-04-01_2022-06-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">693,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Common stock repurchased and retired</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c355" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" scale="0" format="ixt:numdotdecimal" decimals="INF">225,500</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c356" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">2,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c357" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">62,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c358" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">896,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c359" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:zerodash" decimals="0" sign="-">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c360" contextRef="d_2022-04-01_2022-06-30" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">960,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Stock-based compensation expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c363" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">32,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c365" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c366" contextRef="d_2022-04-01_2022-06-30" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" format="ixt:numdotdecimal" decimals="0">32,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 22.2%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Options exercised</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c367" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">8,332</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c369" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">30,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c371" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c372" contextRef="d_2022-04-01_2022-06-30" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">30,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total comprehensive loss</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c374" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c375" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c376" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c377" contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">265,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c378" contextRef="d_2022-04-01_2022-06-30" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">265,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr class="q2qselectedlineitem" style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td class="q2qselectedlineitem" colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Balance as of June 30, 2022</p>
			</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c379" contextRef="i_2022-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,728,173</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c380" contextRef="i_2022-06-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">128,000</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c381" contextRef="i_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c382" contextRef="i_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">63,108,000</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c383" contextRef="i_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,287,000</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td class="q2qselectedlineitem" style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c384" contextRef="i_2022-06-30" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">61,949,000</ix:nonFraction></td>
			<td class="q2qselectedlineitem" style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c388" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">503,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c389" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c390" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">503,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Common stock repurchased and retired</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c391" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" format="ixt:numdotdecimal" decimals="-2">259,200</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c392" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:numdotdecimal" decimals="-3">2,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c393" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:numdotdecimal" decimals="-3">62,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c394" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:numdotdecimal" decimals="-3">1,052,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c395" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:zerodash" decimals="0" sign="-">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c396" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" format="ixt:numdotdecimal" decimals="-3">1,116,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Stock-based compensation expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c399" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:numdotdecimal" decimals="-3">32,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c401" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c402" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:numdotdecimal" decimals="-3">32,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Options exercised</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c403" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">8,332</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c405" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">30,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c407" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c408" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">30,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total comprehensive loss</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c410" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c411" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c412" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c413" contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">137,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c414" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">137,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Balance as of September 30, 2022</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c415" contextRef="i_2022-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" format="ixt:numdotdecimal" decimals="0">12,477,305</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c416" contextRef="i_2022-09-30_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3">126,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c417" contextRef="i_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:zerodash" decimals="0">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c418" contextRef="i_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3">62,559,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">(<ix:nonFraction id="c419" contextRef="i_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" sign="-">1,424,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c420" contextRef="i_2022-09-30" unitRef="USD" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3">61,261,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</div>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">See accompanying Notes to Condensed Consolidated Financial Statements (Unaudited).</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">4</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Condensed Consolidated Statements of Cash Flows (Unaudited)</b></p>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="null">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>For the Nine Months Ended </b></b></b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>September 30,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 70%;"><b>Cash Flows From Operating Activities:</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c424" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,128,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c425" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">2,718,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; padding-left: 9pt;">Adjustments to reconcile net income to net cash provided by operating activities:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Stock-based compensation</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c428" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:ShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">68,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c429" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:ShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">119,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Depreciation and amortization</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c430" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">687,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c431" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">641,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Equity in income of unconsolidated affiliate</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c432" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">392,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c433" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">87,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Operating lease expense, net of accretion</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c434" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="apt:OperatingLeaseExpenseNetOfAccretion" scale="0" format="ixt:numdotdecimal" decimals="0">515,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c435" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="apt:OperatingLeaseExpenseNetOfAccretion" scale="0" format="ixt:numdotdecimal" decimals="0">689,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt;">Changes in operating assets and liabilities:</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Accounts receivable, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c437" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" format="ixt:numdotdecimal" decimals="0">2,066,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c438" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" format="ixt:numdotdecimal" decimals="0">2,680,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Accounts receivable, related party</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c439" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInDueFromRelatedParties" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">599,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c440" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInDueFromRelatedParties" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">161,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Inventories</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c441" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInInventories" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">2,871,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c442" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInInventories" scale="0" format="ixt:numdotdecimal" decimals="0">155,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Prepaid expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c443" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">344,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c444" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">2,374,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Accounts payable and accrued liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c445" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">302,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c446" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">759,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Lease liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c447" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">523,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c448" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">690,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net cash provided by operating activities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c449" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" format="ixt:numdotdecimal" decimals="0">4,929,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c450" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" format="ixt:numdotdecimal" decimals="0">2,331,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>Cash Flows From Investing Activities:</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Purchases of property and equipment</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c452" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="0">487,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c453" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="0">349,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net cash used in investing activities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c454" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">487,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c455" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">349,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>Cash Flows From Financing Activities:</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Proceeds from exercise of stock options</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c457" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="apt:ProceedsFromPaymentsForStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">440,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c458" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="apt:ProceedsFromPaymentsForStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="0">60,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Repurchase of common stock</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c459" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="0" format="ixt:numdotdecimal" decimals="0">2,979,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c460" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="0" format="ixt:numdotdecimal" decimals="0">2,832,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Treasury stock excise tax</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c461" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">30,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c462" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="0" format="ixt:zerodash" decimals="0" sign="-">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">.</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="text-align: right; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net cash used in financing activities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c464" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">2,569,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c465" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">2,772,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Increase (decrease) in cash and cash equivalents</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c466" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="0" format="ixt:numdotdecimal" decimals="0">1,873,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c467" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">790,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Cash and cash equivalents, beginning of the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c468" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">16,290,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c469" contextRef="i_2021-12-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">16,307,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Cash and cash equivalents, end of the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c470" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">18,163,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c471" contextRef="i_2022-09-30" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">15,517,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</div>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">See accompanying Notes to Condensed Consolidated Financial Statements (Unaudited).</p>

<div>&#xa0;</div>

<div>&#xa0;</div>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">5</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:NatureOfOperations" id="c472" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>1.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>The Company</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Alpha Pro Tech, Ltd. (&#x201c;Alpha Pro Tech,&#x201d; the &#x201c;Company,&#x201d; &#x201c;we&#x201d;, &#x201c;us&#x201d; or &#x201c;our&#x201d;) is in the business of protecting people, products and environments. The Company accomplishes this by developing, manufacturing and marketing a line of building supply products for the new home and re-roofing markets and a line of disposable protective apparel for the cleanroom, industrial, pharmaceutical, medical and dental markets.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The Building Supply segment consists of construction weatherization products, such as housewrap, housewrap accessories, namely tape and flashing, and synthetic roof underlayment, as well as other woven material.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The Disposable Protective Apparel segment consists of a complete line of disposable protective garments (shoecovers, bouffant caps, coveralls, gowns, frocks and lab coats), face masks and face shields. All of our disposable protective apparel products, including face masks and face shields, are sold through similar distribution channels, are single-use and disposable, have the purpose of protecting people, products and environments, and have to be produced in Food and Drug Administration (&#x201c;FDA&#x201d;) approved facilities, regardless of the market served.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The Company&#x2019;s products are sold under the "Alpha Pro Tech" brand name as well as under private label and are predominantly sold in the United States of America (&#x201c;U.S.&#x201d;).</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="c474" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>2.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Basis of Presentation and Revenue Recognition Policy</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The interim financial information included in this report is unaudited; however, the information reflects all adjustments (consisting of normal recurring adjustments) that are, in the opinion of management, necessary for the fair presentation of the consolidated financial position, results of operations and cash flows for the interim periods reflected herein. These interim condensed consolidated financial statements have been prepared in accordance with the rules and regulations of the Securities and Exchange Commission (&#x201c;SEC&#x201d;) and, therefore, omit certain information and note disclosures that would be necessary to present the statements in accordance with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;). The interim condensed consolidated financial statements should be read in conjunction with the Company&#x2019;s current year SEC filings, as well as the Company&#x2019;s consolidated financial statements for the year ended December 31, 2022, which are included in the Company&#x2019;s Annual Report on Form 10-K for the year ended December 31, 2022 (the &#x201c;2022 Form 10-K&#x201d;), filed with the SEC on March 16, 2023. The results of operations for the three and nine months ended September 30, 2023 in this Quarterly Report on Form 10-Q are not necessarily indicative of the results to be expected for the full year. The condensed consolidated balance sheet as of December 31, 2022 was prepared using information from the audited consolidated balance sheet contained in the 2022 Form 10-K; however, it does not include all disclosures required by U.S. GAAP for annual consolidated financial statements.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">Net sales include revenue from products and shipping and handling charges, net of estimates for product returns and any related sales incentives. Our customer contracts have a single performance obligation: transfer control of products to customers. Revenue is measured as the amount of consideration that we expect to receive in exchange for transferring control of products. All revenue is recognized when we satisfy our performance obligations under the applicable contract. We recognize revenue in connection with transferring control of the promised products to the customer, with revenue being recognized at the point in time when the customer obtains control of the products, which is generally when title passes to the customer upon delivery to a third party carrier for FOB shipping point arrangements and to the customer for FOB destination arrangements, at which time a receivable is created for the invoice sent to the customer. Shipping and handling activities are performed prior to the customer obtaining control of the goods and are accounted for as fulfillment activities and are not a promised good or service. Shipping and handling charges billed to customers are included in revenue. Shipping and handling costs, associated with the distribution of the Company&#x2019;s product to the customers, are recorded in cost of goods sold and are recognized when control of the product is transferred to the customer, which is generally when title passes to the customer upon delivery to a third party carrier for FOB shipping point arrangements and to the customer for FOB destination arrangements. We estimate product returns based on historical return rates and estimate rebates based on contractual agreements. Using probability assessments, we estimate sales incentives expected to be paid over the term of the contract. Sales taxes and value added taxes in foreign and domestic jurisdictions that are collected from customers and remitted to governmental authorities are accounted for on a net basis and, therefore, are excluded from net sales. The Company manufactures certain private label goods for customers and has determined that control does not pass to the customer at the time of manufacture, based upon the nature of the private labeling. The Company has determined as of September 30, 2023 that it had no material contract assets and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. See Note 10 and Note 11 of these Notes to Condensed Consolidated Financial Statements (Unaudited) for information on revenue disaggregated by type and by geographic region.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">6</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
</ix:nonNumeric>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="c498" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>3.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Stock-Based Compensation</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company previously granted stock options to employees and non-employee directors under a stock option plan (the &#x201c;2004 Option Plan&#x201d;). Stock options have been granted with exercise prices at or above the fair market value of the underlying shares of common stock on the date of grant. Options vest and expire according to terms established at the grant date. The 2004 Option Plan provided for a total of <ix:nonFraction id="c501" contextRef="i_2023-09-30_PlanNameAxis-The2004PlanMember" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="0" format="ixt:numdotdecimal" decimals="INF">5,000,000</ix:nonFraction> common shares eligible for issuance. Under the 2004 Option Plan, approximately <ix:nonFraction id="c503" contextRef="d_2020-01-01_2020-12-31_PlanNameAxis-The2004PlanMember" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:numdotdecimal" decimals="INF">5,009,750</ix:nonFraction> options (taking into account cancelled and expired options that were added back to the plan reserve) had been granted as of December 31, 2020.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">At the Company&#x2019;s 2020 Annual Meeting of Shareholders, the Company&#x2019;s shareholders approved the Alpha Pro Tech, Ltd. 2020 Omnibus Incentive Plan (the &#x201c;2020 Incentive Plan&#x201d;). The 2020 Incentive Plan provides for the grant of incentive and nonqualified stock options, stock appreciation rights, awards of restricted stock and restricted stock units, performance share awards, cash awards and other equity-based awards to employees (including officers), consultants and non-employee directors of the Company and its affiliates. A total of <ix:nonFraction id="c509" contextRef="i_2023-09-30_RestructuringPlanAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" scale="0" format="ixt:numdotdecimal" decimals="INF">1,800,000</ix:nonFraction> shares of the Company&#x2019;s common stock are reserved for issuance under the 2020 Incentive Plan, plus the number of shares underlying any award granted under the 2004 Option Plan that expires, terminates or is cancelled or forfeited under the terms of the 2004 Option Plan. As a result of the approval of the 2020 Incentive Plan, no future equity awards will be made pursuant to the 2004 Option Plan. Although no new awards may be granted under the 2004 Option Plan, all previously granted awards under the 2004 Option Plan will continue to be governed by the terms of the 2004 Option Plan.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company records compensation expense for the fair value of stock-based awards determined as of the grant date, including employee stock options and restricted stock awards, over the determined requisite service period, which is generally ratably over the vesting term.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">For the nine months ended September 30, 2023 and 2022, <ix:nonFraction id="c522" contextRef="d_2023-01-01_2023-09-30_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:numdotdecimal" decimals="INF">46,400</ix:nonFraction> and <ix:nonFraction id="c523" contextRef="d_2022-01-01_2022-09-30_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:numdotdecimal" decimals="INF">19,600</ix:nonFraction> stock options were granted under the 2020 Incentive Plan, respectively. The Company recognized $<ix:nonFraction id="c525" contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">10,000</ix:nonFraction> and $<ix:nonFraction id="c526" contextRef="d_2022-01-01_2022-09-30_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">39,000</ix:nonFraction> in stock-based compensation expense for the nine months ended September 30, 2023 and 2022, respectively, related to outstanding options previously granted under the 2004 Option Plan. For the nine months ended September 30, 2023 and 2022, <ix:nonFraction id="c536" contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" format="ixt:numdotdecimal" decimals="INF">227,600</ix:nonFraction> and <ix:nonFraction id="c537" contextRef="d_2022-01-01_2022-09-30_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" format="ixt:numdotdecimal" decimals="INF">13,600</ix:nonFraction> restricted stock awards were granted under the 2020 Incentive Plan, respectively. The Company recognized $<ix:nonFraction id="c539" contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">58,000</ix:nonFraction> and $<ix:nonFraction id="c540" contextRef="d_2022-01-01_2022-09-30_AwardTypeAxis-RestrictedStockMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">80,000</ix:nonFraction> in compensation expense associated with outstanding restricted stock awards for the nine months ended September 30, 2023 and 2022, respectively. As of September 30, 2023, $<ix:nonFraction id="c547" contextRef="i_2023-09-30_AwardTypeAxis-RestrictedStockMember" unitRef="USD" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" format="ixt:numdotdecimal" decimals="0">966,000</ix:nonFraction> of total unrecognized compensation cost related to outstanding restricted stock awards was expected to be recognized over a weighted-average remainder period of <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c548" format="ixt-sec:duryear">2.86</ix:nonNumeric> years.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company uses the Black-Scholes option-pricing model to value the options. The Company uses historical data to estimate the expected life of the options. The risk-free interest rate for periods within the contractual life of an award is based on the US Treasury yield curve in effect at the time of grant. The estimated volatility is based on historical volatility and management&#x2019;s expectations of future volatility. The Company uses an estimated dividend payout of <span style="-sec-ix-hidden:c549">zero</span>, as the Company has not paid dividends in the past and, at this time, does not expect to do so in the future. The Company accounts for option forfeitures as they occur. The following table summarizes stock option activity for the nine months ended September 30, 2023:</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 12pt; margin: 0pt;">&#xa0;</p>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">7</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<ix:exclude><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p></ix:exclude>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="c568" escape="true">
<table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><b>&#xa0;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Weighted Average</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><b>&#xa0;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Exercise Price</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Options</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Per Option</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="width: 68%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, December 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c570" contextRef="i_2022-12-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">410,615</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c571" contextRef="i_2022-12-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.50</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Granted to employees and non-employee directors</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c572" contextRef="d_2023-01-01_2023-09-30" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:numdotdecimal" decimals="INF">46,400</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c573" contextRef="d_2023-01-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">4.23</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Exercised</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c574" contextRef="d_2023-01-01_2023-09-30" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" format="ixt:numdotdecimal" decimals="INF">134,250</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c575" contextRef="d_2023-01-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.27</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Canceled/expired/forfeited</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c576" contextRef="d_2023-01-01_2023-09-30" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" format="ixt:numdotdecimal" decimals="INF">13,333</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c577" contextRef="d_2023-01-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.61</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, September 30, 2023</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c578" contextRef="i_2023-09-30" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">309,432</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c579" contextRef="i_2023-09-30" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.70</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options exercisable, September 30, 2023</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c580" contextRef="i_2023-09-30" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">253,231</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c581" contextRef="i_2023-09-30" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.59</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">As of September 30, 2023, $<ix:nonFraction id="c566" contextRef="i_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" format="ixt:numdotdecimal" decimals="0">161,000</ix:nonFraction> of total unrecognized compensation cost related to stock options was expected to be recognized over a weighted average period of <ix:nonNumeric contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c567" format="ixt-sec:duryear">2.75</ix:nonNumeric> years.</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="c582" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>4.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Recent Accounting Pronouncements</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt; text-align: justify;">In August 2020, the FASB issued ASU 2020-06 Debt --<i>Debt with Conversion and Other Options (Subtopic 470 and Derivatives and Hedging --Contracts in Entity's Own Equity (Subtopic 815: Accounting for Convertible Instruments and Contracts in an Entity's Own Equity</i>, which is intended to simplify the accounting for certain financial instruments with characteristics of liabilities and equity, including convertible instruments and contracts on an entity's own equity. The guidance allows for either full retrospective adoption or modified retrospective adoption. The guidance is effective for the Company January 1, 2024 and early adoption is permitted. The Company is evaluating the impact the adoption of this guidance will have on its condensed consolidated financial statements.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">In June 2016, the FASB issued ASU 2016-13, Financial Instruments --Credit Losses <i>(Topic 326): Measurement of Credit Losses on Financial Instruments</i>, which replaces the existing incurred loss impairment model with an expected credit loss model and requires a financial asset measured at amortized cost to be presented at the net amount expected to be collected. Public business entities classified as smaller reporting companies are required to apply the provision of ASU 2016-13 with annual reporting periods after December 15, 2022. The Company adopted Topic 326 effective January 1, 2023, which did not have a material impact on the Company&#x2019;s condensed consolidated financial statements.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">Management periodically reviews new accounting standards that are issued. Management has not identified any other new standards that it believes merit further discussion at this time.</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:InventoryDisclosureTextBlock" id="c584" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>5.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Inventories</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">As of September 30, 2023 and December 31, 2022, inventories net of reserves consisted of the following:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="c594" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c596" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">11,220,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c597" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">13,018,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c598" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">2,594,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c599" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">2,225,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c600" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">7,712,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c601" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">9,154,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c602" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">21,526,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c603" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">24,397,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
</ix:nonNumeric>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:EquityMethodInvestmentsDisclosureTextBlock" id="c604" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>6. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Equity Investment in Unconsolidated Affiliate</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">In 2005, Alpha ProTech Engineered Products, Inc. (a subsidiary of Alpha Pro Tech, Ltd.) entered into a joint venture with a manufacturer in India, Maple Industries and associates, for the production of building products. Under the terms of the joint venture agreement, a private company, Harmony Plastics Private Limited (&#x201c;Harmony&#x201d;), was created with ownership interests of <ix:nonFraction id="c608" contextRef="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-AlphaProTechEngineeredProductsMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="Pure" name="us-gaap:EquityMethodInvestmentOwnershipPercentage" scale="-2" format="ixt:numdotdecimal" decimals="4">41.66</ix:nonFraction>% owned by Alpha ProTech Engineered Products, Inc. and <ix:nonFraction id="c609" contextRef="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-MapleIndustriesAndAssociatesMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="Pure" name="us-gaap:EquityMethodInvestmentOwnershipPercentage" scale="-2" format="ixt:numdotdecimal" decimals="4">58.34</ix:nonFraction>% owned by Maple Industries and associates.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">This joint venture positions Alpha ProTech Engineered Products, Inc. to respond to current and expected increased product demand for housewrap and synthetic roof underlayment and provides future capacity for sales of specialty roofing component products and custom products for industrial applications requiring high quality extrusion coated fabrics. In addition, the joint venture now supplies products for the Company&#x2019;s Disposable Protective Apparel segment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">The capital from the initial funding and a bank loan, which is guaranteed exclusively by the individual shareholders of Maple Industries and associates and collateralized by the assets of Harmony, were utilized to purchase the original manufacturing facility in India. Harmony currently has <span style="-sec-ix-hidden:c610">four</span> facilities in India (<span style="-sec-ix-hidden:c611">three</span> owned and <span style="-sec-ix-hidden:c612">one</span> rented), consisting of: (1) a <ix:nonFraction id="c614" contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingBuildingProductsMember_StatementGeographicalAxis-IN" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">139,000</ix:nonFraction> square foot building for manufacturing building products; (2) a <ix:nonFraction id="c616" contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">121,000</ix:nonFraction> square foot building for manufacturing coated material and sewing proprietary disposable protective apparel; (3) a <ix:nonFraction id="c618" contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-SewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">23,000</ix:nonFraction> square foot facility for sewing proprietary disposable protective apparel; and (4) a <ix:nonFraction id="c620" contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingOfBuildingProductsMember_StatementGeographicalAxis-IN" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">159,000</ix:nonFraction> square foot facility (rented) for manufacturing Building Supply segment products. All additions have been financed by Harmony with no guarantees from the Company.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">8</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">In accordance with ASC 810, Consolidation, the Company assesses whether or not related entities are variable interest entities (&#x201c;VIEs&#x201d;). For those related entities that qualify as VIEs, ASC 810 requires the Company to determine whether the Company is the primary beneficiary of the VIE, and, if so, to consolidate the VIE. The Company has determined that Harmony is not a VIE and is, therefore, considered to be an unconsolidated affiliate.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The Company records its investment in Harmony as &#x201c;equity investment in unconsolidated affiliate&#x201d; in the accompanying consolidated balance sheets. The Company records its equity interest in Harmony&#x2019;s results of operations as &#x201c;equity in income of unconsolidated affiliate&#x201d; in the accompanying consolidated statements of income. The Company periodically reviews its investment in Harmony for impairment. Management has determined that <span style="-sec-ix-hidden:c623"><span style="-sec-ix-hidden:c624">no</span></span> impairment was required as of September 30, 2023, or December 31, 2022. Under the equity method, since the Company&#x2019;s reporting currency is different from of Harmony&#x2019;s reporting currency, the Company is required to translate our proportionate share of equity for effects of translations in foreign currency and adjust the investment accordingly and accrue the adjustment as a component of Accumulated other comprehensive loss (&#x201c;AOCL&#x201d;).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">For the three months ended September 30, 2023 and 2022, the Company purchased $<ix:nonFraction id="c633" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="apt:ExpenseToAcquireInventory" scale="0" format="ixt:numdotdecimal" decimals="0">5,001,000</ix:nonFraction> and $<ix:nonFraction id="c634" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="apt:ExpenseToAcquireInventory" scale="0" format="ixt:numdotdecimal" decimals="0">7,786,000</ix:nonFraction> of inventories, respectively, from Harmony. For the nine months ended September 30, 2023 and 2022, the Company purchased $<ix:nonFraction id="c639" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="apt:ExpenseToAcquireInventory" scale="0" format="ixt:numdotdecimal" decimals="0">14,871,000</ix:nonFraction> and $<ix:nonFraction id="c640" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="apt:ExpenseToAcquireInventory" scale="0" format="ixt:numdotdecimal" decimals="0">19,645,000</ix:nonFraction> of inventories, respectively, from Harmony. The Company sold $<ix:nonFraction id="c641" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:ProceedsFromSaleOfProductiveAssets" scale="0" format="ixt:numdotdecimal" decimals="0"><ix:nonFraction id="c642" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:ProceedsFromSaleOfProductiveAssets" scale="0" format="ixt:numdotdecimal" decimals="0">66,000</ix:nonFraction></ix:nonFraction> of inventories to Harmony for each of the three months ended September 30, 2023 and 2022. For the nine months ended September 30, 2023 and 2022, the Company sold $<ix:nonFraction id="c651" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:ProceedsFromSaleOfProductiveAssets" scale="0" format="ixt:numdotdecimal" decimals="0">266,000</ix:nonFraction> and $<ix:nonFraction id="c652" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:ProceedsFromSaleOfProductiveAssets" scale="0" format="ixt:numdotdecimal" decimals="0">280,000</ix:nonFraction> of inventories, respectively, to Harmony.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">For the three months ended September 30, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $<ix:nonFraction id="c657" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">180,000</ix:nonFraction> and loss in income from unconsolidated affiliate of $<ix:nonFraction id="c658" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">13,000</ix:nonFraction>, respectively, related to Harmony. For the nine months ended September 30, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $<ix:nonFraction id="c663" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">392,000</ix:nonFraction> and $<ix:nonFraction id="c664" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">87,000</ix:nonFraction>, respectively, related to Harmony.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">As of September 30, 2023, the Company&#x2019;s investment in Harmony was $<ix:nonFraction id="c667" contextRef="i_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">5,116,000</ix:nonFraction>, which consisted of its original $<ix:nonFraction id="c668" contextRef="i_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentAggregateCost" scale="0" format="ixt:numdotdecimal" decimals="0">1,450,000</ix:nonFraction> investment and cumulative equity in income of unconsolidated affiliate of $<ix:nonFraction id="c669" contextRef="i_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate" scale="0" format="ixt:numdotdecimal" decimals="0">6,168,000</ix:nonFraction>, less $<ix:nonFraction id="c670" contextRef="d_2023-01-01_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" scale="0" format="ixt:numdotdecimal" decimals="0">942,000</ix:nonFraction> in repayments of an advance, $<ix:nonFraction id="c671" contextRef="d_2023-01-01_2023-09-30_InvestmentTypeAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentDividendsOrDistributions" scale="0" format="ixt:numdotdecimal" decimals="0">77,000</ix:nonFraction> in payments of dividends, and $<ix:nonFraction id="c672" contextRef="d_2023-01-01_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentDividendsOrDistributions" scale="0" format="ixt:numdotdecimal" decimals="0">1,483,000</ix:nonFraction> in AOCL on foreign currency translations.</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="c673" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>7. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Accrued Liabilities</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">As of September 30, 2023 and December 31, 2022, accrued liabilities consisted of the following:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="c681" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Payroll expenses and taxes payable</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c683" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:AccruedSalariesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">298,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c684" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:AccruedSalariesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">138,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Commissions and bonuses payable and general accrued liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c685" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:AccruedBonusesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">587,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c686" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:AccruedBonusesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">695,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total accrued liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c687" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">885,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c688" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">833,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">9</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
</ix:nonNumeric>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:EarningsPerShareTextBlock" id="c689" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>8. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Basic and Diluted Earnings Per Common Share</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table provides a reconciliation of both net income and the number of shares used in the computation of &#x201c;basic&#x201d; earnings per common share (&#x201c;EPS&#x201d;), which utilizes the weighted average number of common shares outstanding without regard to dilutive shares, and &#x201c;diluted&#x201d; EPS, which includes all such dilutive shares, for the three and nine months ended September 30, 2023 and 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="c717" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>For the Three Months Ended</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><b><b>For the Nine Months Ended</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net income (numerator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c719" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,430,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c720" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">503,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c721" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,128,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c722" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">2,718,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Shares (denominator):</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 34.6%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Basic weighted average common shares outstanding</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c724" contextRef="d_2023-07-01_2023-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">11,781,071</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c725" contextRef="d_2022-07-01_2022-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">12,615,187</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c726" contextRef="d_2023-01-01_2023-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">11,974,336</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c727" contextRef="d_2022-01-01_2022-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">12,834,505</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Add: dilutive effect of common stock options</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c728" contextRef="d_2023-07-01_2023-09-30" unitRef="Share" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c729" contextRef="d_2022-07-01_2022-09-30" unitRef="Share" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" format="ixt:numdotdecimal" decimals="INF">73,194</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c730" contextRef="d_2023-01-01_2023-09-30" unitRef="Share" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" format="ixt:zerodash" decimals="INF">-</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c731" contextRef="d_2022-01-01_2022-09-30" unitRef="Share" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" format="ixt:numdotdecimal" decimals="INF">75,365</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Diluted weighted average common shares outstanding</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c732" contextRef="d_2023-07-01_2023-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">11,781,071</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c733" contextRef="d_2022-07-01_2022-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,688,381</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c734" contextRef="d_2023-01-01_2023-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">11,974,336</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c735" contextRef="d_2022-01-01_2022-09-30" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,909,870</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Earnings per common share:</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Basic</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c737" contextRef="d_2023-07-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.12</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c738" contextRef="d_2022-07-01_2022-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.04</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c739" contextRef="d_2023-01-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.26</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c740" contextRef="d_2022-01-01_2022-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.21</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Diluted</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c741" contextRef="d_2023-07-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.12</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c742" contextRef="d_2022-07-01_2022-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.04</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c743" contextRef="d_2023-01-01_2023-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.26</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c744" contextRef="d_2022-01-01_2022-09-30" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.21</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
</ix:nonNumeric>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ComprehensiveIncomeNoteTextBlock" id="c745" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>9. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Accumulated Other Comprehensive Loss</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 14pt;">Accumulated other comprehensive loss (&#x201c;AOCL&#x201d;), a component of shareholders' equity, consists of foreign currency translation adjustments related to foreign currency gains or losses on our unconsolidated affiliate as its functional currency is other than the U.S. dollar. The resulting foreign currency translation gains or losses are deferred as AOCL and reclassified to earnings only upon sale or liquidation of that business. The accumulated other comprehensive loss on equity in unconsolidated affiliate was $<ix:nonFraction id="c747" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,483,000</ix:nonFraction> and $<ix:nonFraction id="c748" contextRef="i_2022-12-31" unitRef="USD" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,489,000</ix:nonFraction> as of September 30, 2023 and December 31, 2022, respectively.</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:SegmentReportingDisclosureTextBlock" id="c753" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>10. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Activity of Business Segments</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company operates through <span style="-sec-ix-hidden:c755">two</span> business segments:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">(1) Building Supply: consisting of a line of construction supply weatherization products. The construction supply weatherization products consist of housewrap and housewrap accessories including window and door flashing and seam tape, and synthetic roof underlayment, as well as other woven material. The majority of the Company&#x2019;s equity in income of unconsolidated affiliate (Harmony) is included in the total segment income for the Building Supply segment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">(2) Disposable Protective Apparel: consisting of a complete line of disposable protective garments, including shoecovers (including the Aqua Trak&#xae; and spunbond shoecovers), bouffant caps, coveralls, frocks, lab coats, gowns and hoods, as well as face masks and face shields for the pharmaceutical, cleanroom, industrial, medical and dental markets. A portion of the Company&#x2019;s equity in income of unconsolidated affiliate (Harmony) is included in the total segment income for the Disposable Protective Apparel segment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">Segment data excludes charges allocated to the principal executive office and other unallocated corporate overhead expenses and income tax. The Company evaluates the performance of its segments and allocates resources to them based primarily on net sales.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The accounting policies of the segments are the same as those described previously under Summary of Significant Accounting Policies (see Note 2).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">10</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table presents consolidated net sales for each segment for the three and nine months ended September 30, 2023 and 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="c802" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Three Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 48%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c804" contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">11,449,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c805" contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">9,604,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c806" contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">30,616,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c807" contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">30,657,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c808" contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">4,604,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c809" contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">5,118,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c810" contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">15,351,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c811" contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">19,099,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c812" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">16,053,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c813" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">14,722,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c814" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">45,967,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c815" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">49,756,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table presents the reconciliation of consolidated segment income to consolidated net income for the three and nine months ended September 30, 2023 and 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" id="c816" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>For the Three Months Ended</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><b><b>For the Nine Months Ended</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 48%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c818" contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,973,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c819" contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,386,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c820" contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">4,456,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c821" contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">4,968,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c822" contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">982,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c823" contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">489,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c824" contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,090,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c825" contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">2,412,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total segment income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c826" contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">2,955,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c827" contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,875,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c828" contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">7,546,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c829" contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">7,380,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Unallocated corporate overhead expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c830" contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,130,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c831" contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,213,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c832" contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,444,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c833" contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,854,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Provision for income taxes</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c834" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">395,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c835" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">159,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c836" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">974,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c837" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">808,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c838" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,430,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c839" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">503,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c840" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,128,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c841" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">2,718,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table presents the consolidated net property and equipment, goodwill and definite-lived intangible assets (&#x201c;consolidated assets&#x201d;) by segment as of September 30, 2023 and December 31, 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" id="c842" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b><b><b>December 31,</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c844" contextRef="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">3,316,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c845" contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">3,395,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c846" contextRef="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,246,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c847" contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,327,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total segment assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c848" contextRef="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">4,562,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c849" contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">4,722,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Unallocated corporate assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c850" contextRef="i_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,036,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c851" contextRef="i_2022-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,076,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total consolidated assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c852" contextRef="i_2023-09-30" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">5,598,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c853" contextRef="i_2022-12-31" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">5,798,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">11</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>
</ix:nonNumeric>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="apt:FinancialInformationAboutGeographicAreasTextBlock" id="c854" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>11. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Financial Information about Geographic Areas</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">The following table summarizes the Company&#x2019;s net sales by geographic region for the three and nine months ended September 30, 2023 and 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" id="c5835572D-F26D-47E1-90E2-BCB3555337C0" escape="true" continuedAt="c83A75F82-63B0-4803-8216-2708EE6FD22E">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Three Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net sales by geographic region</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35.2%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c898" contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">15,928,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c899" contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">14,569,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c900" contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">45,682,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c901" contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">48,385,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">International</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c902" contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">125,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c903" contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">153,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c904" contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">285,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c905" contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">1,371,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Consolidated net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c906" contextRef="d_2023-07-01_2023-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">16,053,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c907" contextRef="d_2022-07-01_2022-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">14,722,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c908" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">45,967,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c909" contextRef="d_2022-01-01_2022-09-30" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">49,756,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">Net sales by geographic region are based on the countries in which our customers are located. For the three months ended September 30, 2023 and 2022, the Company generated approximately $<ix:nonFraction id="c877" contextRef="d_2023-07-01_2023-09-30_StatementGeographicalAxis-CA" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">42,000</ix:nonFraction> and $<ix:nonFraction id="c878" contextRef="d_2022-07-01_2022-09-30_StatementGeographicalAxis-CA" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">103,000</ix:nonFraction>, respectively, in sales from Canada. For the nine months ended September 30, 2023 and 2022, the Company generated approximately $<ix:nonFraction id="c883" contextRef="d_2023-01-01_2023-09-30_StatementGeographicalAxis-CA" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">140,000</ix:nonFraction> and $<ix:nonFraction id="c884" contextRef="d_2022-01-01_2022-09-30_StatementGeographicalAxis-CA" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">1,119,000</ix:nonFraction>, respectively, in sales from Canada. No country other than the United States was significant to the Company&#x2019;s consolidated net sales.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">The following table summarizes the locations of the Company&#x2019;s long-lived assets by geographic region as of September 30, 2023 and December 31, 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:continuation id="c83A75F82-63B0-4803-8216-2708EE6FD22E">
<table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b><b><b>December 31,</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Long-lived assets by geographic region</p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48.5%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c913" contextRef="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">4,283,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c914" contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">4,380,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">International</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c915" contextRef="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,260,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c916" contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,362,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated total long-lived assets</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c917" contextRef="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">5,543,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c918" contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">5,742,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:continuation>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
</ix:nonNumeric>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" id="c919" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>12. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Related Party Transactions</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 20pt;">As of September 30, 2023, the Company had no related party transactions, other than the Company&#x2019;s transactions with its unconsolidated affiliate, Harmony. See Note 6 of these Notes to Condensed Consolidated Financial Statements (Unaudited).</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:LesseeOperatingLeasesTextBlock" id="c924" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>13. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Leases</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">The Company has operating leases for the Company&#x2019;s corporate office and manufacturing facilities, which expire at various dates through 2026. The Company&#x2019;s primary operating lease commitments as of September 30, 2023 related to the Company&#x2019;s corporate office in Aurora, Canada and its manufacturing facilities in Valdosta, Georgia; Nogales, Arizona; and Salt Lake City, Utah.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">12</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">As of September 30, 2023, the Company had operating lease right-of-use assets of $<ix:nonFraction id="c931" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">1,210,000</ix:nonFraction> and operating lease liabilities of $<ix:nonFraction id="c932" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:OperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0">1,251,000</ix:nonFraction>. As of September 30, 2023, the Company did <span style="-sec-ix-hidden:c935">not</span> have any finance leases recorded on the Company&#x2019;s condensed consolidated balance sheet. Operating lease expense was approximately $<ix:nonFraction id="c936" contextRef="d_2023-01-01_2023-09-30" unitRef="USD" name="us-gaap:OperatingLeaseExpense" scale="0" format="ixt:numdotdecimal" decimals="0">922,000</ix:nonFraction> during the nine months ended September 30, 2023.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">The aggregate future minimum lease payments and reconciliation to lease liabilities as of September 30, 2023 were as follows:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="c956" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 81%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Remaining three months of 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c958" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" scale="0" format="ixt:numdotdecimal" decimals="0">281,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c959" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="0" format="ixt:numdotdecimal" decimals="0">551,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c960" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="0" format="ixt:numdotdecimal" decimals="0">434,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c961" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="0" format="ixt:numdotdecimal" decimals="0">47,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total future minimum lease payments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c962" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="0" format="ixt:numdotdecimal" decimals="0">1,313,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Less imputed interest</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c963" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="0" format="ixt:numdotdecimal" decimals="0">62,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total Lease liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c964" contextRef="i_2023-09-30" unitRef="USD" name="us-gaap:OperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0">1,251,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">As of September 30, 2023, the weighted average remaining lease term of the Company&#x2019;s operating leases was <ix:nonNumeric contextRef="i_2023-09-30" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="c951" format="ixt-sec:duryear">2.2</ix:nonNumeric> years. During the nine months ended September 30, 2023, the weighted average discount rate with respect to these leases was <ix:nonFraction id="c955" contextRef="i_2023-09-30" unitRef="Pure" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" format="ixt:numdotdecimal" decimals="4">4.55</ix:nonFraction>%.</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:IncomeTaxDisclosureTextBlock" id="c965" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>14. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Income taxes</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company accounts for income taxes using the asset and liability method. A valuation allowance is recorded to reduce the carrying amounts of deferred income tax assets unless it is more likely than not that such assets will be realized. The Company&#x2019;s policy is to record any interest and penalties assessed by the Internal Revenue Service as a component of the provision for income taxes. The Company provides allowances for uncertain income tax positions when it is more likely than not that the position will not be sustained upon examination by the tax authority.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">Alpha Pro Tech, Ltd. and its subsidiaries file income tax returns in the U.S. federal jurisdiction, and in various state and foreign jurisdictions.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">An employer generally does not claim a corporate income tax deduction (which would be in an amount equal to the amount of income recognized by the employee) upon the exercise of its employee's incentive stock options (&#x201c;ISOs&#x201d;) unless the employee does not meet the holding period requirements and sells early, making a disqualifying disposition, or if the options otherwise do not qualify as ISOs under applicable tax laws. With non-qualified stock options (&#x201c;NQSOs&#x201d;), on the other hand, the employer is typically eligible to claim a deduction upon its employee's exercise of the NQSOs.</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="c967" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>15. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Contingencies</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">On June 7, 2022, the Company filed a lawsuit (the &#x201c;Lawsuit&#x201d;) in Utah naming as defendants the vendors from which the Company ordered equipment for its facility in Utah (collectively the &#x201c;Defendants&#x201d;). The Lawsuit relates to certain equipment ordered from Defendants and paid for by the Company, which Defendants never delivered. In the Lawsuit the Company is seeking the following relief: compensatory damages in the amount $<ix:nonFraction id="c971" contextRef="d_2022-06-07_2022-06-07_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" unitRef="USD" name="us-gaap:LossContingencyDamagesSoughtValue" scale="0" format="ixt:numdotdecimal" decimals="0">490,000</ix:nonFraction>, representing the money the Company paid for the machines it never received, lost profits in the form of mask sales it could have made if Defendants had delivered the machines on the promised date, and other monetary and equitable relief. As of September 30, 2023, the Company has written off the $<ix:nonFraction id="c974" contextRef="i_2023-09-30_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" unitRef="USD" name="apt:DepositPaidForEquipmentWriteoff" scale="0" format="ixt:numdotdecimal" decimals="0">490,000</ix:nonFraction> balance of the deposit paid for the equipment, pending any recovery in the Lawsuit. As of the date hereof, no counterclaims have been asserted against the Company. The Company believes there would not be any meritorious claims against the Company related to the Lawsuit. The Lawsuit has not been resolved and the final outcome, including the potential amount of any recovery for the Company&#x2019;s claims, is uncertain. Any potential recovery represents a gain contingency in accordance with ASC 450, Contingencies, that has not been recorded as the matter was not resolved as of September 30, 2023. Any recovery will be recorded when received.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">13</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>

<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Notes to Condensed Consolidated Financial Statements (Unaudited)</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<ix:exclude><p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p></ix:exclude>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company is subject to various pending and threatened litigation actions in the ordinary course of business. Although it is not possible to determine with certainty at this point in time what liability, if any, the Company will have as a result of such litigation, based on consultation with legal counsel, management does not anticipate that the ultimate liability, if any, resulting from such litigation will have a material effect on the Company&#x2019;s financial condition and results of operations.</p>
</ix:nonNumeric>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-09-30" name="us-gaap:SubsequentEventsTextBlock" id="c979" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>16. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Subsequent Events</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company has reviewed and evaluated whether subsequent events have occurred from the condensed consolidated balance sheet date of September 30, 2023 through the filing date of this Quarterly Report on Form 10-Q that would require accounting or disclosure and has concluded that there are no such subsequent events.</p>

<div>&#xa0;</div>

<div>&#xa0;</div>

<ix:exclude><div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">14</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div></ix:exclude>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" /></ix:nonNumeric>

<div>&#xa0;</div>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>ITEM 2. </b>&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;&#xa0;<b>MANAGEMENT'S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">You should read the following discussion and analysis together with our unaudited condensed consolidated financial statements and the notes to our unaudited condensed consolidated financial statements, which appear elsewhere in this report, as well as our Annual Report on Form 10-K for the year ended December 31, 2022, filed with the Securities and Exchange Commission (the &#x201c;SEC&#x201d;) on March 16, 2023 (the &#x201c;2022 Form 10-K&#x201d;).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Special Note Regarding Forward-Looking Statements</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Certain information set forth in this Quarterly Report on Form 10-Q contains &#x201c;forward-looking statements&#x201d; within the meaning of federal securities laws. Forward-looking statements include statements concerning our plans, objectives, goals, strategies, future events, future revenues or performance, capital expenditures, financing needs, plans or intentions, including, without limitation, our expected orders, production levels and sales in 2023 and 2024, and other information that is not historical information. When used in this report, the words &#x201c;estimates,&#x201d; &#x201c;expects,&#x201d; &#x201c;anticipates,&#x201d; &#x201c;forecasts,&#x201d; &#x201c;plans,&#x201d; &#x201c;intends,&#x201d; &#x201c;believes&#x201d; and variations of such words or similar expressions are intended to identify forward-looking statements. We may make additional forward-looking statements from time to time. We undertake no obligation to publicly update any forward-looking statements, whether as a result of new information, future developments or otherwise. All forward-looking statements, whether written or oral and whether made by us or on our behalf, are expressly qualified by this special note.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">The following are some of the risks that could affect our financial performance or that could cause actual results to differ materially from those expressed or implied in our forward-looking statements:</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">&#xa0;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">We are exposed to foreign currency exchange risks related to our unconsolidated affiliate operations in India.</p>
			</td>
		</tr>
		<tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">Failure to remediate the material weakness in our internal control over financial reporting could result in us being unable to accurately and timely report our financial results or comply with the requirements of being a public company, which would adversely affect us.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">We are subject to risks associated with our joint venture.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">The effects of the COVID-19 pandemic, including effects on the business and operations of those within our supply chain and on global economic conditions generally, which have had, and could continue to have, a material adverse effect on our business, financial results and results of operations.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">The loss of any large customer or a reduction in orders from any large customer could reduce our net sales and harm our operating results.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">We rely on suppliers and contractors, and our business could be seriously harmed if these suppliers and contractors are not able to meet our requirements.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">Risks associated with international manufacturing could have a significant effect on our business.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">Our success depends in part on protection of our intellectual property, and our failure to protect our intellectual property could adversely affect our competitive advantage, our brand recognition and our business.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">Our industry is highly competitive, which may negatively affect our ability to grow our customer base and generate sales.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company&#x2019;s results are affected by competitive conditions and customer preferences.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company&#x2019;s growth objectives are largely dependent on the timing and market acceptance of our new product offerings, including our ability to continually renew our pipeline of new products and to bring those products to market.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">Global economic conditions could adversely affect the Company&#x2019;s business and financial results.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">We are subject to risks related to climate change and natural disasters or other events beyond our control.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">Security breaches and other disruptions to the Company&#x2019;s information technology infrastructure could interfere with the Company&#x2019;s operations, compromise information belonging to the Company and our customers and suppliers and expose the Company to liability, which could adversely impact the Company&#x2019;s business and reputation.</p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">15</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company&#x2019;s future results may be affected by various legal and regulatory proceedings and legal compliance risks.</p>
			</td>
		</tr>

</tbody></table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;text-align:justify;margin:0pt;">Our common stock price is volatile, which could result in substantial losses for individual shareholders.</p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">The foregoing list of risks is not exclusive. For a more detailed discussion of the risk factors associated with our business, see the risks described in Part I, Item IA, &#x201c;Risk Factors,&#x201d; in the 2022 Form 10-K. These and many other factors could affect the Company&#x2019;s future operating results and financial condition and could cause actual results to differ materially from expectations based on forward-looking statements made in this document or elsewhere by the Company or on its behalf.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;"><b>Special Note Regarding Smaller Reporting Company Status</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">We are filing this report as a &#x201c;smaller reporting company&#x201d; (as defined in Rule 12b-2 of the Securities Exchange Act of 1934, as amended). As a result of being a smaller reporting company, we are allowed and have elected to omit certain information from this Management&#x2019;s Discussion and Analysis of Financial Condition and Results of Operations; however, we have provided all information for the periods presented that we believe to be appropriate.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;"><b>Where to find more information about us.</b> We make available, free of charge, on our website (<span style="text-decoration: underline; ">http://www.alphaprotech.com</span>) our most recent Annual Report on Form 10-K, any Current Reports on Form 8-K furnished or filed since our most recent Annual Report on Form 10-K, and any amendments to such reports, as soon as reasonably practicable following the electronic filing of such reports with the SEC. In addition, in accordance with SEC rules, we provide paper copies of our filings free of charge upon request.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;"><b>Critical Accounting Policies and Estimates</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The preparation of our financial statements in conformity with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;) requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities, the disclosure of contingent assets and liabilities at the dates of the financial statements and the reported amounts of net sales and expenses during the periods reported. We base estimates on past experience and on various other assumptions that are believed to be reasonable under the circumstances. The application of these accounting policies on a consistent basis enables us to provide timely and reliable financial information. Our significant accounting policies and estimates are more fully described in Note 3 &#x2013; &#x201c;Summary of Significant Accounting Policies&#x201d; in the notes to our consolidated financial statements in Item 8 of the 2022 Form 10-K. Since December&#xa0;31, 2022, there have been no material changes to our critical accounting policies and estimates as described in the 2022 Form 10-K.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>OVERVIEW</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Alpha Pro Tech is in the business of protecting people, products and environments. We accomplish this by developing, manufacturing and marketing a line of high-value, disposable protective apparel products for the cleanroom, industrial, pharmaceutical, medical and dental markets. We also manufacture a line of building supply construction weatherization products. Our products are sold under the &#x201c;Alpha Pro Tech&#x201d; brand name, as well as under private label.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our products are grouped into two business segments: (i) the Building Supply segment, consisting of construction weatherization products, such as housewrap and housewrap accessories and synthetic roof underlayment as well as other woven material; and (ii) the Disposable Protective Apparel segment, consisting of disposable protective garments (including shoecovers, bouffant caps, coveralls, gowns, frocks and lab coats), face masks and face shields.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our target markets include pharmaceutical manufacturing, bio-pharmaceutical manufacturing and medical device manufacturing, lab animal research, high technology electronics manufacturing (which includes the semi-conductor market), medical and dental distributors, and construction, building supply and roofing distributors.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">16</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our products are used primarily in cleanrooms, industrial safety manufacturing environments, health care facilities, such as hospitals, laboratories and dental offices, and building and re-roofing sites. Our products are distributed principally in the United States through a network consisting of purchasing groups, national distributors, local distributors, independent sales representatives and our own sales and marketing force.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>RESULTS OF OPERATIONS </b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">The following table sets forth certain operational data as a percentage of net sales for the periods indicated:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Three Months</b> </b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Ended September 30,</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months</b> <b> </b></b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Ended September 30,</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 48%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">100.0</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">100.0</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">100.0</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">100.0</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Gross profit</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">37.6</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">32.7</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">37.3</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">33.9</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Selling, general and administrative expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">27.3</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">27.0</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">28.9</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">24.8</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Income from operations</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">8.9</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.4</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">6.9</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">7.8</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Income before provision for income taxes</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11.4</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.5</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">8.9</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">7.1</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">8.9</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.4</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">6.8</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">5.5</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Three and Nine months ended September 30, 2023 compared to Three and Nine months ended September 30, 2022 </b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Sales</i></b><b>.</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Consolidated sales for the quarter ended September 30, 2023</b> increased to $16,053,000, from $14,722,000 for the quarter ended September 30, 2022, representing an increase of $1,331,000, or 9.0%. This increase consisted of increased sales in the Building Supply segment of $1,845,000, partially offset by decreased sales in the Disposable Protective Apparel segment of $514,000.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Building Supply segment sales for the quarter ended September 30, 2023</b> increased by $1,845,000, or 19.2%, to a record sales quarter of $11,449,000, compared to $9,604,000 for the quarter ended September 30, 2022. The 19.2% increase is comprised of a 25.7% increase in housewrap sales and a 164.5% increase in other woven material sales, partially offset by a 4.5% decrease in synthetic roof underlayment sales. The sales mix of the Building Supply segment for the quarter ended September 30, 2023 was approximately 43% for synthetic roof underlayment, 43% for housewrap and 14% for other woven material. That is compared to approximately 53% for synthetic roof underlayment, 41% for housewrap and 6% for other woven material for the quarter ended September 30, 2022. Our synthetic roof underlayment product line primarily includes REX SynFelt&#xae;, REX TECHNOply&#xae; and TECHNO SB&#xae;, and our housewrap product line primarily consists of REX Wrap&#xae;, REX Wrap Plus&#xae; and REX&#x2122; Wrap Fortis. Housewrap accessories consist of REXTREME Window and Door Flashing and REX&#x2122; Premium Seam Tape.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The housewrap market continues to be soft, as housing starts in the third quarter of 2023 in the United States decreased by 6.0% compared to the same period a year ago. Our sales of housewrap and accessories, which increased by 25.7% in the third quarter of 2023 over the prior-year quarter, continue to significantly outperform the market through market diversification, product development and sales team expansion. Sales of our REX Wrap&#xae; and REX Wrap Plus&#xae;, our entry-level housewrap products, were up 16.9% over the prior-year quarter, despite the major decrease in housing starts, as we have continued to form relationships with additional dealers across the country. Management is encouraged by our growth opportunities with REX&#x2122; Wrap Fortis, our premium housewrap line, as we continue to make inroads into the multi-family and commercial construction sector, evidenced by an increase of 24.8% in sales for this product in the third quarter of 2023. We also experienced a 256% increase in sales of housewrap accessories, REXTREME Window and Door Flashing and REX&#x2122; Premium Seam Tape, in the third quarter of 2023 over the prior-year quarter. Management expects that we will continue to see positive trends relative to the industry for both our entry level and premium housewrap and housewrap accessories product lines.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">17</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The synthetic roof underlayment market has also been significantly affected by the continued decrease in new home starts, economic uncertainty, and a push in the market to reduce product selling prices. Despite these pressures, synthetic roof underlayment sales also outperformed the market despite being down 4.5% in the third quarter of 2023 compared to the third quarter of 2022. Management is encouraged by the trend in synthetic roof underlayment of it outperforming the market, especially as we should see an increase in sales as excess inventory is alleviated at the dealer and distribution level. Management is excited about our launch of a new line of self-adhered roofing products in late 2023 or early 2024, which should result in revenue growth within our current customer base and allow for expansion into new markets and business segments. We continue to work closely with our customers to develop new products that increase safety and productivity.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Other woven material sales increased in the third quarter of 2023 compared to the same period of 2022 by 164.5%, primarily due to increased sales to our major customer. We do not expect other woven material to be a growth driver in the remainder of 2023, as these products only represent approximately 12% of the Building Supply segment sales.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Management expects additional growth in the building supply segment. While housing starts may be trending down nationally, we have continually grown market share. We will build on our success within the multi-family and commercial segment and the single-family segment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Disposable Protective Apparel segment sales for the quarter ended September 30, 2023</b> decreased by $514,000, or 10.0%, to $4,604,000, compared to $5,118,000 for the same period of 2022. This segment experienced an increase of 5.1% in sales of disposable protective garments, offset by a 60.6% decrease in sales of face masks and a 73.8% decrease in sales of face shields.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The sales mix of the Disposable Protective Apparel segment for the quarter ended September 30, 2023 was approximately 91% for disposable protective garments, 7% for face masks and 2% for face shields. This sales mix is compared to approximately 78% for disposable protective garments, 15% for face masks and 7% for face shields for the quarter ended September 30, 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Sales of disposable protective garments in the third quarter of 2023 were up 5.1% as our channel partners and our end customers are continuing to work through their inventory. In addition, our sales have been positively affected as we can now meet face-to-face with our distribution partners and end-customers, something we have not been able to do since 2020. Face mask and face shield sales are still suffering from the COVID-19 residual excess inventories at the distributor level.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Consolidated sales for the nine months ended September 30, 2023</b> decreased to $45,967,000 from $49,756,000 for the nine months ended September 30, 2022, representing a decrease of $3,789,000, or 7.6%. This decrease consisted of decreased sales in the Building Supply segment of $41,000 and decreased sales in the Disposable Protective Apparel Segment of $3,748,000.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Building Supply segment sales for the nine months ended September 30, 2023</b> decreased by $41,000, or 0.1%, to $30,616,000, compared to $30,657,000 for the same period of 2022. Sales of housewrap increased by 12.2%, sales of other woven material increased by 1.4% and sales of synthetic roof underlayment decreased by 11.2% compared to the same period of 2022. Management is encouraged by the 12.2% increase in housewrap sales, especially since housing starts are down 12.6% year to date.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The sales mix of the Building Supply segment for the nine months ended September 30, 2023 was 42% for synthetic roof underlayment, 46% for housewrap and 12% for other woven material. This compared to 47% for synthetic roof underlayment, 41% for housewrap and 12% for other woven material for the nine months ended September 30, 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">18</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Disposable Protective Apparel segment sales for the nine months ended September 30, 2023</b> decreased by $3,748,000, or 19.6%, to $15,351,000, compared to $19,099,000 for the same period of 2022. This segment decrease was due to a 71.5% decrease in sales of face masks, and an 81.2% decrease in sales of face shields, partially offset by a 7.7% increase in sales of disposable protective garments.</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Sales of disposable protective garments for the nine months ended September 30, 2023 were up 7.7%, for the reasons as discussed above in the three months ended September 30, 2023 section. Face mask and face shield sales continue to be affected by excess inventories at the distributor level and in the marketplace.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The sales mix of the Disposable Protective Apparel segment for the nine months ended September 30, 2023 was 90% for disposable protective garments, 7% for face masks and 3% for face shields. This sales mix is compared to 67% for disposable protective garments, 21% for face masks and 12% for face shields for the nine months ended September 30, 2022.</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Gross Profit</b>. Gross profit increased by $1,217,000, or 25.3%, to $6,035,000 for the quarter ended September 30, 2023, from $4,818,000 for the quarter ended September 30, 2022. The gross profit margin was 37.6% for the quarter ended September 30, 2023, compared to 32.7% for the quarter ended September 30, 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Gross profit increased by $251,000, or 1.5%, to $17,123,000 for the nine months ended September 30, 2023, from $16,872,000 for the same period of 2022. The gross profit margin was 37.3% for the nine months ended September 30, 2023, compared to 33.9% for the same period of 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The gross profit margin in 2023 has been positively affected by ocean freight rates which have come down since the latter part of 2022. Management expects the gross profit margin to be in a similar range throughout the balance of 2023, although the sales mix could affect gross margin.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Selling, General and Administrative Expenses</b>. Selling, general and administrative expenses increased by $417,000, or 10.5%, to $4,387,000 for the quarter ended September 30, 2023, from $3,970,000 for the quarter ended September 30, 2022. As a percentage of net sales, selling, general and administrative expenses increased to 27.3% for the quarter ended September 30, 2023, from 27.0% for the same period of 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The change in expenses by segment for the quarter ended September 30, 2023 was as follows: Disposable Protective Apparel expenses were down $24,000, or 2.1%; Building Supply expenses were up $324,000, or 20.1%; and corporate unallocated expenses were up $117,000, or 9.6%. The decrease in the Disposable Protective Apparel segment expenses was primarily related to decreased employee compensation. The increase in the Building Supply segment expenses was primarily related to increased employee compensation, insurance, travel expenses, commission and general factory expenses, partially offset by general office expenses. The increase in corporate unallocated expenses was primarily due to employee compensation.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Selling, general and administrative expenses increased by $934,000, or 7.6%, to $13,275,000 for the nine months ended September 30, 2023, from $12,341,000 for the nine months ended September 30, 2022. As a percentage of net sales, selling, general and administrative expenses increased to 28.9% for the nine months ended September 30, 2023, up from 24.8% for the same period of 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The change in expenses by segment for the nine months ended September 30, 2023 was as follows: Disposable Protective Apparel expenses were down $80,000, or 2.2%; Building Supply expenses were up $909,000, or 18.6%; and corporate unallocated expenses were up $105,000, or 2.8%. The decrease in the Disposable Protective Apparel segment expenses was primarily related to decreased employee compensation, partially offset by increased marketing expenses. The increase in the Building Supply segment expenses was related to increased employee compensation, marketing, travel, insurance and general factory expenses, partially offset by decreased commission and general office expenses. The increase in corporate unallocated expenses was primarily due to increased professional fees and general office expenses, partially offset by decreased insurance expenses.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In accordance with the terms of his employment agreement, the Company&#x2019;s current President and Chief Executive Officer is entitled to an annual bonus equal to 5% of the pre-tax profits of the Company, excluding bonus expense, up to a maximum of $1.0 million. A bonus amount of $96,000 was accrued for the three months ended September 30, 2023, compared to $36,000 for the three months ended September 30, 2022. A total of $216,000 has been accrued for the nine months ended September 30, 2023, compared to $186,000 for the same period of 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">19</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Depreciation and Amortization</b>. Depreciation and amortization expense increased by $24,000, or 11.9%, to $225,000 for the quarter ended September 30, 2023, from $201,000 for the quarter ended September 30, 2022. Depreciation and amortization expense increased by $46,000, or 7.2%, to $687,000 for the nine months ended September 30, 2023, from $641,000 for the same period of 2022. The increase was primarily attributable to increased depreciation for machinery and equipment in the Building Supply segment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;text-indent:9pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Income from Operations</b>. Income from operations increased by $776,000, or 119.9%, to $1,423,000 for the quarter ended September 30, 2023, compared to $647,000 for the quarter ended September 30, 2022. The increased income from operations was primarily due to an increase in gross profit of $1,217,000, partially offset by an increase in selling, general and administrative expenses of $417,000 and an increase in depreciation and amortization expense of $24,000. Income from operations as a percentage of net sales for the quarter ended September 30, 2023 was 8.9%, compared to 4.4% for the same period of 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Income from operations decreased by $729,000, or 18.7%, to $3,161,000 for the nine months ended September 30, 2023, compared to $3,890,000 for the same period of 2022. The decreased income from operations was primarily due to an increase in selling, general and administrative expenses of $934,000 and an increase in depreciation and amortization expense of $46,000, partially offset by an increase in gross profit of $251,000. Income from operations as a percentage of net sales for the nine months ended September 30, 2023 was 6.9%, compared to 7.8% for the same period of 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Other Income.</b> Other income increased by $387,000, to $402,000 for the quarter ended September 30, 2023, compared to $15,000 for the same period of 2022. The increase was primarily due to an increase in equity in income of unconsolidated affiliate of $193,000 and an increase in interest income of $194,000.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Other income increased by $1,305,000, to $941,000 for the nine months ended September 30, 2023, from a loss of $364,000 for the same period of 2022. The increase was primarily due to an increase in equity in income of unconsolidated affiliate of $305,000 and an increase in interest income of $510,000. In addition, there was a loss on fixed assets of $490,000 in 2022 due to equipment for the Disposable Protective Apparel segment that was not delivered. The Company has filed a lawsuit in this matter (see Part II, Item 1, &#x201c;Legal Proceedings,&#x201d; for more information).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Income before Provision for Income Taxes.</b> Income before provision for income taxes for the quarter ended September 30, 2023 was $1,825,000, compared to income before provision for income taxes of $662,000 for the same period of 2022, representing an increase of $1,163,000, or 175.7%. This increase in income before provision for income taxes was due to an increase in income from operations of $776,000 and an increase in other income of $387,000.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Income before provision for income taxes for the nine months ended September 30, 2023 was $4,102,000, compared to income before provision for income taxes of $3,526,000 for the same period of 2022, representing an increase of $576,000, or 16.3%. This increase in income before provision for income taxes was due to an increase in other income of $1,305,000, partially offset by a decrease in income from operations of $729,000.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Provision for Income Taxes. </b>The provision for income taxes for the quarter ended September 30, 2023 was $395,000, compared to $159,000 for the same period of 2022. The estimated effective tax rate was 21.6% for the quarter ended September 30, 2023, compared to 24.0% for the quarter ended September 30, 2022. The Company does not record a tax provision on equity in income of unconsolidated affiliate, which reduces the effective tax rate.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The provision for income taxes for the nine months ended September 30, 2023 was $974,000, compared to $808,000 for the same period of 2022. The estimated effective tax rate was 23.7% for the nine months ended September 30, 2023, compared to 22.9% for the nine months ended September 30, 2022. The Company does not record a tax provision on equity in income of unconsolidated affiliate, which reduces the effective tax rate.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">20</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Net Income</b>. Net income for the quarter ended September 30, 2023 was $1,430,000, compared to net income of $503,000 for the same period of 2022, representing an increase of $927,000, or 184.3%. The net income increase between the third quarters of 2023 and 2022 was due to an increase in income before provision for income taxes of $1,163,000, partially offset by an increase in provision for income taxes of $236,000. Net income as a percentage of net sales for the quarter ended September 30, 2023 was 8.9%, and net income as a percentage of net sales for the same period of 2022 was 3.4%. Basic and diluted earnings per common share for the quarter ended September 30, 2023 and 2022 were $0.12 and $0.04, respectively.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Net income for the nine months ended September 30, 2023 was $3,128,000, compared to net income of $2,718,000 for the same period of 2022, representing an increase of $410,000, or 15.1%. The net income increase between the 2023 and 2022 periods was due to an increase in income before provision for income taxes of $576,000, partially offset by an increase in provision for income taxes of $166,000. Net income as a percentage of net sales for the nine months ended September 30, 2023 was 6.8%, and net income as a percentage of net sales for the same period of 2022 was 5.5%. Basic and diluted earnings per common share for the nine months ended September 30, 2023 and 2022 were $0.26 and $0.21, respectively.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>LIQUIDITY AND CAPITAL RESOURCES </b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of September 30, 2023, the Company had cash and cash equivalents (&#x201c;cash&#x201d;) of $18,163,000 and working capital of $50,705,000. As of September 30, 2023, the Company&#x2019;s current ratio (current assets/current liabilities) was 27:1, compared to a current ratio of 22:1 as of December 31, 2022. Cash increased by 11.5%, or $1,873,000 to $18,163,000 as of September 30, 2023, compared to $16,290,000 as of December 31, 2022, and working capital increased by $549,000 from $50,156,000 as of December 31, 2022. The increase in cash from December 31, 2022, was due to cash provided by operating activities of $4,929,000, partially offset by cash used in investing activities of $487,000 and cash used in financing activities of $2,569,000.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net cash provided by operating activities of $4,929,000 for the nine months ended September 30, 2023 was due to net income of $3,128,000, as adjusted primarily by the following: stock-based compensation expense of $68,000, depreciation and amortization expense of $687,000, equity in income of unconsolidated affiliate of $392,000, operating lease expense net of accretion of $515,000, an increase in accounts receivable of $2,066,000, a decrease in accounts receivable related party of $599,000, an increase in prepaid expenses of $344,000, a decrease in inventory of $2,871,000, a decrease in accounts payable and accrued liabilities of $302,000, and a decrease in lease liabilities of $523,000, all compared to December 31, 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Accounts receivable increased by $1,467,000, or 21.0%, to $8,440,000 as of September 30, 2023, from $6,973,000 as of December 31, 2022. The increase in accounts receivable was primarily related to higher sales in September 2023 compared to December 2022. The number of days that sales remained outstanding as of September 30, 2023, calculated by using an average of accounts receivable outstanding and annual revenue, was 44 days, compared to 35 days as of December 31, 2022.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Inventory decreased by $2,871,000, or 11.8%, to $21,526,000 as of September 30, 2023, from $24,397,000 as of December 31, 2022. The decrease was due to a decrease in inventory for the Disposable Protective Apparel segment of $516,000, or 3.6%, to $13,869,000 and a decrease in inventory for the Building Supply segment of $2,355,000, or 23.5%, to $7,657,000.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Prepaid expenses decreased by $344,000, or 7.0%, to $4,558,000 as of September 30, 2023, from $4,902,000 as of December 31, 2022. The decrease was primarily due to decreased prepaid inventory.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Right-of-use assets as of September 30, 2023, decreased by $515,000 to $1,210,000 from $1,725,000 as of December 31, 2022, as a result of amortization of the balance.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">21</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Lease liabilities as of September 30, 2023, decreased by $523,000 to $1,251,000 from $1,774,000 as of December 31, 2022. The decrease in lease liabilities was the result of lease payments made during the nine months ended September 30, 2023.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Accounts payable and accrued liabilities as of September 30, 2023, decreased by $302,000, or 20.0%, to $1,205,000, from $1,507,000 as of December 31, 2022. The decrease was primarily due to a decrease in trade payable.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net cash used in investing activities was $487,000 for the nine months ended September 30, 2023, compared to net cash used in investing activities of $349,000 for the same period of 2022. Investing activities for the nine months ended September 30, 2023 and 2022 consisted of the purchase of property and equipment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net cash used in financing activities was $2,569,000 for the nine months ended September 30, 2023, compared to net cash used in financing activities of $2,772,000 for the same period of 2022. Net cash used in financing activities for the nine months ended September 30, 2023 resulted from the payment of $2,979,000 for the repurchase of common stock and $30,000 for treasury stock excise tax, partially offset by $440,000 in proceeds from the exercise of stock options. Net cash used in financing activities for the nine months ended September 30, 2022 resulted from the payment of $2,832,000 for the repurchase of common stock, partially offset by $60,000 in proceeds from the exercise of stock options.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of September 30, 2023, we had $1,217,000 available for additional stock purchases under our stock repurchase program. During the nine months ended September 30, 2023, we repurchased 724,110 shares of common stock at a cost of $2,979,000. As of September 30, 2023, we had repurchased a total of 20,384,727 shares of common stock at a cost of approximately $49,337,000 through our repurchase program which commenced in 1999. We retire all stock upon repurchase. Future repurchases are expected to be funded from cash on hand and cash flows from operating activities.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We believe that our current cash balance and expected cash flow from operations will be sufficient to satisfy our projected working capital and planned capital expenditures for the foreseeable future.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Recent Accounting Pronouncements </b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">In August 2020, the FASB issued ASU 2020-06 Debt --<i>Debt with Conversion and Other Options (Subtopic 470 and Derivatives and Hedging --Contracts in Entity's Own Equity (Subtopic 815: Accounting for Convertible Instruments and Contracts in an Entity's Own Equity</i>, which is intended to simplify the accounting for certain financial instruments with characteristics of liabilities and equity, including convertible instruments and contracts on an entity's own equity. The guidance allows for either full retrospective adoption or modified retrospective adoption. The guidance is effective for the Company January 1, 2024 and early adoption is permitted. The Company is evaluating the impact the adoption of this guidance will have on its condensed consolidated financial statements.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">In June 2016, the FASB issued ASU 2016-13, Financial Instruments --Credit Losses <i>(Topic 326): Measurement of Credit Losses on Financial Instruments</i>, which replaces the existing incurred loss impairment model with an expected credit loss model and requires a financial asset measured at amortized cost to be presented at the net amount expected to be collected. Public business entities classified as smaller reporting companies are required to apply the provision of ASU 2016-13 with annual reporting periods after December 15, 2022. The Company adopted Topic 326 effective January 1, 2023, which did not have a material impact on the Company&#x2019;s condensed consolidated financial statements.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Management periodically reviews new accounting standards that are issued. Management has not identified any other new standards that it believes merit further discussion at this time.</p>

<p style="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&#xa0;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>ITEM 3. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As a smaller reporting company, we are not required to provide the information otherwise required by this Item.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>ITEM 4. CONTROLS AND PROCEDURES</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Evaluation of Disclosure Controls and Procedures</b>.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Under the supervision and with the participation of our management, including our President and Chief Executive Officer (principal executive officer) and our Chief Financial Officer (principal financial officer), we evaluated the effectiveness of the design and operation of our disclosure controls and procedures (as such term is defined in Rule 13a-15(e) and Rule 15d-15(e) under the Securities Exchange Act of 1934 (the &#x201c;Exchange Act&#x201d;)) as of September 30, 2023, pursuant to the evaluation of these controls and procedures required by Rule 13a-15 of the Exchange Act. Disclosure controls and procedures are the controls and other procedures that we have designed to ensure that we record, process, summarize and report in a timely manner the information that we must disclose in reports that we file with or submit to the SEC under the Exchange Act, and such controls include, without limitation, controls and procedures designed to ensure that information required to be disclosed is accumulated and communicated to our management, including our Chief Executive Officer and Chief Financial Officer, as appropriate to allow for timely decisions regarding required disclosure.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">22</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In designing and evaluating our disclosure controls and procedures, we recognize that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving the desired control objectives and that we are required to apply our judgment in evaluating the cost-benefit relationship of possible controls and procedures.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Based on the evaluation, our principal executive officer and principal financial officer concluded that our disclosure controls and procedures were effective at the reasonable assurance level as of the end of the period covered by this report.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Changes in Internal Control Over Financial Reporting</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">During the quarter to which this report relates, there was no change in our internal control over financial reporting (as such term is defined in Rule 13a-15(f) and Rule 15d-15(f) under the Exchange Act) that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>PART II. OTHER INFORMATION</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>ITEM 1. LEGAL PROCEEDINGS</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">On June 7, 2022, the Company filed a lawsuit (the &#x201c;Lawsuit&#x201d;) in Utah naming as defendants the vendors from which the Company ordered equipment for its facility in Utah (collectively the &#x201c;Defendants&#x201d;). The Lawsuit relates to certain equipment ordered from Defendants and paid for by the Company, which Defendants never delivered. In the Lawsuit the Company is seeking the following relief: compensatory damages in the amount $490,000, representing the money the Company paid for the machines it never received, lost profits in the form of mask sales it could have made if Defendants had delivered the machines on the promised date, and other monetary and equitable relief. As of September 30, 2023, the Company has written off the $490,000 balance of the deposit paid for the equipment, pending any recovery in the Lawsuit. As of the date hereof, no counterclaims have been asserted against the Company. The Company believes there would not be any meritorious claims against the Company related to the Lawsuit. The Lawsuit remains unresolved and the final outcome, including the potential amount of any recovery for the Company&#x2019;s claims, is uncertain. Any potential recovery represents a&#xa0;gain&#xa0;contingency&#xa0;in accordance with ASC 450, Contingencies, that has not been recorded as the matter was not resolved as of September 30, 2023. Any recovery will be recorded when received.&#xa0;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company is subject to various pending and threatened litigation actions in the ordinary course of business. Although it is not possible to determine with certainty at this point in time what liability, if any, the Company will have as a result of such litigation, based on consultation with legal counsel, management does not anticipate that the ultimate liability, if any, resulting from such litigation will have a material effect on the Company&#x2019;s financial condition and results of operations.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>ITEM 1A. RISK FACTORS</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">A list of factors that could materially affect our business, financial condition or operating results is described in Part I, Item 1A, &#x201c;Risk Factors&#x201d; in the 2022 Form 10-K. There have been no material changes to our risk factors from those disclosed in Part I, Item 1A, &#x201c;Risk Factors&#x201d; in the 2022 Form 10-K.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>ITEM 2. UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>ISSUER PURCHASES OF EQUITY SECURITIES</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">23</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table sets forth purchases made by or on behalf of the Company or any &#x201c;affiliated purchaser,&#x201d; as defined in Rule 10b-18(a)(3) of the Exchange Act:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="14" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 46%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Issuer Purchases of Equity Securities</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35%; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b>Period</b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Total Number of Shares Purchased</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Average Price Paid</b></b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>per Share</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Total Number of</b></b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Shares Purchased </b></b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>as Part of Publicly Announced</b></b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Program (1)</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Approximate Dollar Value</b></b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>of Shares that May Yet Be Purchased Under the </b></b></p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Program (1)</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">July 1 - 31, 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">56,600</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.93</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">56,600</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 17%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">2,042,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">August 1 - 31, 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">48,600</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.00</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">48,600</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 17%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,876,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">September 1 - 30, 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">143,910</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.33</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">143,910</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 17%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,217,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35%;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">249,110</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.13</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">249,110</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 17%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; width: 1%;">&#xa0;</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">(1) On June 22, 2023, the Company announced that the Board of Directors had authorized a $2,000,000 expansion of the Company&#x2019;s existing share repurchase program. All the shares included in this table were purchased pursuant to this program. Since the inception of the share repurchase program in 1999, the Company has authorized the repurchase of $50,520,000 of common stock, of which $1,217,000 was available for repurchase as of September 30, 2023. The share repurchase plan expires on December 15, 2024.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">We did not sell any unregistered equity securities during the periods covered by this Quarterly Report on Form 10-Q.</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGNUM" style="text-align: center; width: 100%; font-size: 10pt; font-family: Times New Roman;">24</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>ITEM 6. EXHIBITS </b></p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">&#xa0;</p>

<table cellpadding="0" cellspacing="0" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 100%; margin-left: 0pt; margin-right: 0pt;">

		<tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">3.1.1(P)</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Certificate of Incorporation of Alpha Pro Tech, Ltd., incorporated by reference to Exhibit 3(f) to Form 10-K for the year ended December 31, 1994, filed on March 31, 1995 (File No. 000-19893).</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">3.1.2(P)</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Certificate of Amendment of Certificate of Incorporation of Alpha Pro Tech, Ltd., incorporated by reference to Exhibit 3(j) to Form 10-K for the year ended December 31, 1994, filed on March 31, 1995 (File No. 000-19893).</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">3.1.3(P)</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Certificate of Ownership and Merger (BFD Industries, Inc. into Alpha Pro Tech, Ltd.), incorporated by reference to Exhibit 3(l) to Form 10-K for the year ended December 31, 1994, filed on March 31, 1995 (File No. 000-19893).</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">3.2</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><a href="http://www.sec.gov/Archives/edgar/data/884269/000143774922029334/ex_457219.htm" style="-sec-extract:exhibit;">Amended and Restated Bylaws of Alpha Pro Tech, Ltd., incorporated by reference to Exhibit 3.1 to Form 8-K, filed on December 19, 2022 (File No. 001-15725).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">31.1</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><a href="ex_591043.htm" style="-sec-extract:exhibit;">Certification of President and Chief Executive Officer pursuant to Rule 13a-14(a) and Rule 15d-14(a) of the Securities Exchange Act, as amended.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">31.2</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><a href="ex_591044.htm" style="-sec-extract:exhibit;">Certification of Chief Financial Officer pursuant to Rule 13a-14(a) and Rule 15d-14(a) of the Securities Exchange Act, as amended.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">32.1</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><a href="ex_591045.htm" style="-sec-extract:exhibit;">Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 &#x2013;&#xa0;President and Chief Executive Officer.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">32.2</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><a href="ex_591046.htm" style="-sec-extract:exhibit;">Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 &#x2013;&#xa0;Chief Financial Officer.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">101</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Interactive Data Files for Alpha Pro Tech, Ltd.&#x2019;s Form 10-Q for the period ended September 30, 2023, formatted in Inline XBRL.</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt 0pt 0pt 5pt;">104</p>
			</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101).</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">(P) Indicates a paper filing with the SEC.</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<div class="PGBK" style="width: 100%; margin-left: 0pt; margin-right: 0pt">
<div class="PGFTR" style="text-align: center; width: 100%">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">25</div>
</div>
</div>

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="width: 100%;">
<div class="hf-row">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: left; font-weight: bold; margin: 0pt; width: 99.9%; display: inline-block;">Alpha Pro Tech, Ltd.</div>
</div>

<div class="hf-row">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; width: 99.9%; display: inline-block;">&#xa0;</div>
</div>
</div>
</div>

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>SIGNATURES</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tbody><tr>
			<td style="width: 5%;">&#xa0;</td>
			<td style="width: 20%;">&#xa0;</td>
			<td style="width: 25%;">&#xa0;</td>
			<td colspan="2" rowspan="1" style="width: 4%;">ALPHA PRO TECH, LTD.</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&#xa0;</td>
			<td style="width: 20%;">&#xa0;</td>
			<td style="width: 25%;">&#xa0;</td>
			<td style="width: 4%;">&#xa0;</td>
			<td style="width: 31%;">&#xa0;</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">DATE:</td>
			<td style="width: 20%; border-bottom: 1px solid rgb(0, 0, 0);">November 8, 2023</td>
			<td style="width: 25%;">&#xa0;</td>
			<td style="width: 4%; border-bottom: 1px solid rgb(0, 0, 0);">BY:</td>
			<td style="width: 31%; border-bottom: 1px solid rgb(0, 0, 0);">/s/Lloyd Hoffman</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&#xa0;</td>
			<td style="width: 20%;">&#xa0;</td>
			<td style="width: 25%;">&#xa0;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">Lloyd Hoffman</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&#xa0;</td>
			<td style="width: 20%;">&#xa0;</td>
			<td style="width: 25%;">&#xa0;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">President and Chief Executive Officer</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&#xa0;</td>
			<td style="width: 20%;">&#xa0;</td>
			<td style="width: 25%;">&#xa0;</td>
			<td style="width: 4%;">&#xa0;</td>
			<td style="width: 31%;">&#xa0;</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&#xa0;</td>
			<td style="width: 20%;">&#xa0;</td>
			<td style="width: 25%;">&#xa0;</td>
			<td style="width: 4%;">&#xa0;</td>
			<td style="width: 31%;">&#xa0;</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">DATE:</td>
			<td style="width: 20%; border-bottom: 1px solid rgb(0, 0, 0);">November 8, 2023</td>
			<td style="width: 25%;">&#xa0;</td>
			<td style="width: 4%; border-bottom: 1px solid rgb(0, 0, 0);">BY:</td>
			<td style="width: 31%; border-bottom: 1px solid rgb(0, 0, 0);">/s/Colleen McDonald</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&#xa0;</td>
			<td style="width: 20%;">&#xa0;</td>
			<td style="width: 25%;">&#xa0;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">Colleen McDonald</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&#xa0;</td>
			<td style="width: 20%;">&#xa0;</td>
			<td style="width: 25%;">&#xa0;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">Chief Financial Officer</td>
			<td style="width: 15%;">&#xa0;</td>
		</tr>

</tbody></table>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;text-indent:306pt;">&#xa0;</p>

<div class="LAST-PAGE-BREAK">
<div class="PGFTR">
<div class="hf-row">
<div class="hf-cell PGNUM" style="text-align: center; font-size: 10pt; font-family: Times New Roman;">26</div>
</div>
</div>
</div>


</body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>ex_591043.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<html><head>
	<title>ex_591043.htm</title>

	<!-- Generated by ThunderDome Portal - 11/4/2023 4:58:46 AM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>

<p style="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&nbsp;</p>

<p style="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tr>
			<td style="width: 50%;"><b>Certification Under Exchange Act Rules 13a </b>&#8211;<b> 14(a) and 15d </b>&#8211;<b> 14(a)</b></td>
			<td style="width: 50%; text-align: right;"><b>EXHIBIT 31.1</b></td>
		</tr>

</table>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">I, Lloyd Hoffman, certify that:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">1.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">I have reviewed this Quarterly Report on Form 10-Q of Alpha Pro Tech, Ltd.;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">2.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">3.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">4.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">a)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">b)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">c)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">d)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">5.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions):</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">a)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">b)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tr>
			<td style="width: 5%;">DATE:</td>
			<td style="width: 20%; border-bottom: 1px solid rgb(0, 0, 0);">November 8, 2023</td>
			<td style="width: 25%;">&nbsp;</td>
			<td style="width: 4%; border-bottom: 1px solid rgb(0, 0, 0);">BY:</td>
			<td style="width: 31%; border-bottom: 1px solid rgb(0, 0, 0);">/s/Lloyd Hoffman</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&nbsp;</td>
			<td style="width: 20%;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">Lloyd Hoffman</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&nbsp;</td>
			<td style="width: 20%;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">President and Chief Executive Officer</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&nbsp;</td>
			<td style="width: 20%;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">(Principal Executive Officer)</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>

</table>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">&nbsp;</p>

<div class="LAST-PAGE-BREAK">
<div class="PGFTR">
<div class="hf-row">
<div class="hf-cell PGNUM">&nbsp;</div>
</div>
</div>
</div>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>ex_591044.htm
<DESCRIPTION>EXHIBIT 31.2
<TEXT>
<html><head>
	<title>ex_591044.htm</title>

	<!-- Generated by ThunderDome Portal - 11/4/2023 4:59:14 AM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tr>
			<td style="width: 50%;"><b>Certification Under Exchange Act Rules 13a </b>&#8211;<b> 14(a) and 15d </b>&#8211;<b> 14(a)</b></td>
			<td style="width: 50%; text-align: right;"><b>EXHIBIT 31.2</b></td>
		</tr>

</table>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">I, Colleen McDonald, certify that:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">1.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">I have reviewed this Quarterly Report on Form 10-Q of Alpha Pro Tech, Ltd.;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">2.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">3.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">4.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">a)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">b)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">c)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">d)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">5.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions):</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">a)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tr style="vertical-align: top;">
			<td style="width: 27pt;">&nbsp;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">b)</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</p>
			</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tr>
			<td style="width: 5%;">DATE:</td>
			<td style="width: 20%; border-bottom: 1px solid rgb(0, 0, 0);">November 8, 2023</td>
			<td style="width: 25%;">&nbsp;</td>
			<td style="width: 4%; border-bottom: 1px solid rgb(0, 0, 0);">BY:</td>
			<td style="width: 31%; border-bottom: 1px solid rgb(0, 0, 0);">/s/Colleen McDonald</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&nbsp;</td>
			<td style="width: 20%;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%;">Colleen McDonald</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&nbsp;</td>
			<td style="width: 20%;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%;">Chief Financial Officer</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&nbsp;</td>
			<td style="width: 20%;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%;">(Principal Financial and Accounting Officer)</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>

</table>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 5pt;">&nbsp;</p>

<div class="LAST-PAGE-BREAK">
<div class="PGFTR">
<div class="hf-row">
<div class="hf-cell PGNUM">&nbsp;</div>
</div>
</div>
</div>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>ex_591045.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<html><head>
	<title>ex_591045.htm</title>

	<!-- Generated by ThunderDome Portal - 11/4/2023 4:59:38 AM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">&nbsp;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt 0pt 0pt 5pt;text-indent:9pt;"><b>EXHIBIT 32.1</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Alpha Pro Tech, Ltd.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">CERTIFICATION PURSUANT TO</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">18 U.S.C. SECTION 1350,</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">AS ADOPTED PURSUANT TO</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">In connection with the Quarterly Report of Alpha Pro Tech, Ltd. (the &#8220;Company&#8221;) on Form 10-Q for the quarter ended September 30, 2023, as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), I, Lloyd Hoffman, President and Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">(1) The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">(2) The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tr>
			<td style="width: 5%; font-size: 10pt;">DATE:</td>
			<td style="width: 20%; border-bottom: 1px solid rgb(0, 0, 0);">November 8, 2023</td>
			<td style="width: 25%;">&nbsp;</td>
			<td style="width: 4%; border-bottom: 1px solid rgb(0, 0, 0);">BY:</td>
			<td style="width: 31%; border-bottom: 1px solid rgb(0, 0, 0);">/s/Lloyd Hoffman</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%; font-size: 10pt;">&nbsp;</td>
			<td style="width: 20%;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">Lloyd Hoffman</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%; font-size: 10pt;">&nbsp;</td>
			<td style="width: 20%;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">President and Chief Executive Officer</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>

</table>

<p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&nbsp;</p>

<div class="LAST-PAGE-BREAK">
<div class="PGFTR">
<div class="hf-row">
<div class="hf-cell PGNUM">&nbsp;</div>
</div>
</div>
</div>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>5
<FILENAME>ex_591046.htm
<DESCRIPTION>EXHIBIT 32.2
<TEXT>
<html><head>
	<title>ex_591046.htm</title>

	<!-- Generated by ThunderDome Portal - 11/4/2023 4:59:53 AM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Alpha Pro Tech, Ltd.</b></p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: right;">&nbsp;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: right;"><b>EXHIBIT 32.2</b></p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Alpha Pro Tech, Ltd.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">CERTIFICATION PURSUANT TO</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">18 U.S.C. SECTION 1350,</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">AS ADOPTED PURSUANT TO</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">In connection with the Quarterly Report of Alpha Pro Tech, Ltd. (the &#8220;Company&#8221;) on Form 10-Q for the quarter ended September 30, 2023, as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), I, Colleen McDonald, Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">(1) The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">(2) The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<table border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; width: 100%;">

		<tr>
			<td style="width: 5%;">DATE:</td>
			<td style="width: 20%; border-bottom: 1px solid rgb(0, 0, 0);"><font style="font-size:10pt">November 8, 2023</font></td>
			<td style="width: 25%;">&nbsp;</td>
			<td style="width: 4%; border-bottom: 1px solid rgb(0, 0, 0);">BY:</td>
			<td style="width: 31%; border-bottom: 1px solid rgb(0, 0, 0);">/s/Colleen McDonald</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&nbsp;</td>
			<td style="width: 20%; padding-left: 9pt;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">Colleen McDonald</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 5%;">&nbsp;</td>
			<td style="width: 20%; padding-left: 9pt;">&nbsp;</td>
			<td style="width: 25%;">&nbsp;</td>
			<td colspan="2" rowspan="1" style="width: 4%; padding-left: 9pt;">Chief Financial Officer</td>
			<td style="width: 15%;">&nbsp;</td>
		</tr>

</table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&nbsp;</p>

<div class="LAST-PAGE-BREAK">
<div class="PGFTR">
<div class="hf-row">
<div class="hf-cell PGNUM">&nbsp;</div>
</div>
</div>
</div>


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>apt-20230930.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 07:27PM UTC 2023-11-08--><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:apt="http://www.alphaprotech.com/20230930" xmlns:country="http://xbrl.sec.gov/country/2023" xmlns:currency="http://xbrl.sec.gov/currency/2023" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:exch="http://xbrl.sec.gov/exch/2023" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:naics="http://xbrl.sec.gov/naics/2023" xmlns:sic="http://xbrl.sec.gov/sic/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:srt-types="http://fasb.org/srt-types/2023" xmlns:stpr="http://xbrl.sec.gov/stpr/2023" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:us-types="http://fasb.org/us-types/2023" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.alphaprotech.com/20230930">
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/naics/2023" schemaLocation="https://xbrl.sec.gov/naics/2023/naics-2023.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/country/2023" schemaLocation="https://xbrl.sec.gov/country/2023/country-2023.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/exch/2023" schemaLocation="https://xbrl.sec.gov/exch/2023/exch-2023.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/dei/2023" schemaLocation="https://xbrl.sec.gov/dei/2023/dei-2023.xsd"/>
  <xsd:import namespace="http://fasb.org/srt/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/sic/2023" schemaLocation="https://xbrl.sec.gov/sic/2023/sic-2023.xsd"/>
  <xsd:import namespace="http://fasb.org/us-types/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd"/>
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2023" schemaLocation="https://xbrl.sec.gov/stpr/2023/stpr-2023.xsd"/>
  <xsd:import namespace="http://fasb.org/srt-types/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd"/>
  <xsd:import namespace="http://fasb.org/us-gaap/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/currency/2023" schemaLocation="https://xbrl.sec.gov/currency/2023/currency-2023.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="apt-20230930_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="apt-20230930_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="apt-20230930_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="apt-20230930_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="statement-document-and-entity-information" roleURI="http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">000 - Document - Document And Entity Information</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-balance-sheets-unaudited" roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">001 - Statement - Condensed Consolidated Balance Sheets (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-income-unaudited" roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">003 - Statement - Condensed Consolidated Statements of Income (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">004 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">005 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-cash-flows-unaudited" roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">006 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-the-company" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-1-the-company">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">007 - Disclosure - Note 1 - The Company</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-basis-of-presentation-and-revenue-recognition-policy" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">008 - Disclosure - Note 2 - Basis of Presentation and Revenue Recognition Policy</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-stockbased-compensation" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">009 - Disclosure - Note 3 - Stock-based Compensation</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-recent-accounting-pronouncements" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">010 - Disclosure - Note 4 - Recent Accounting Pronouncements</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-inventories" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">011 - Disclosure - Note 5 - Inventories</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-equity-investment-in-unconsolidated-affiliate" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">012 - Disclosure - Note 6 - Equity Investment in Unconsolidated Affiliate</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-accrued-liabilities" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">013 - Disclosure - Note 7 - Accrued Liabilities</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-basic-and-diluted-earnings-per-common-share" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">014 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-accumulated-other-comprehensive-loss" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">015 - Disclosure - Note 9 - Accumulated Other Comprehensive Loss</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-activity-of-business-segments" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">016 - Disclosure - Note 10 - Activity of Business Segments</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-financial-information-about-geographic-areas" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">017 - Disclosure - Note 11 - Financial Information about Geographic Areas</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-related-party-transactions" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">018 - Disclosure - Note 12 - Related Party Transactions</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-leases-" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">019 - Disclosure - Note 13 - Leases</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-14-income-taxes" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">020 - Disclosure - Note 14 - Income Taxes</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-contingencies" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">021 - Disclosure - Note 15 - Contingencies</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-16-subsequent-events" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">022 - Disclosure - Note 16 - Subsequent Events</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-stockbased-compensation-tables" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">023 - Disclosure - Note 3 - Stock-based Compensation (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-inventories-tables" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">024 - Disclosure - Note 5 - Inventories (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-accrued-liabilities-tables" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">025 - Disclosure - Note 7 - Accrued Liabilities (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-basic-and-diluted-earnings-per-common-share-tables" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">026 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-activity-of-business-segments-tables" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">027 - Disclosure - Note 10 - Activity of Business Segments (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-financial-information-about-geographic-areas-tables" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">028 - Disclosure - Note 11 - Financial Information about Geographic Areas (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-leases-tables" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">029 - Disclosure - Note 13 - Leases (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-stockbased-compensation-details-textual" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">030 - Disclosure - Note 3 - Stock-based Compensation (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-stockedbased-compensation-stock-option-activity-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">031 - Disclosure - Note 3 - Stocked-based Compensation - Stock Option Activity (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-inventories-inventories-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">032 - Disclosure - Note 5 - Inventories - Inventories (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">033 - Disclosure - Note 6 - Equity Investment in Unconsolidated Affiliate (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-accrued-liabilities-accrued-liabilities-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">034 - Disclosure - Note 7 - Accrued Liabilities - Accrued Liabilities (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">035 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-accumulated-other-comprehensive-loss-details-textual" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">036 - Disclosure - Note 9 - Accumulated Other Comprehensive Loss (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-activity-of-business-segments-details-textual" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">037 - Disclosure - Note 10 - Activity of Business Segments (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-activity-of-business-segments-consolidated-net-sales-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">038 - Disclosure - Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">039 - Disclosure - Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">040 - Disclosure - Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-financial-information-about-geographic-areas-details-textual" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">041 - Disclosure - Note 11 - Financial Information about Geographic Areas (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">042 - Disclosure - Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-leases-details-textual" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">043 - Disclosure - Note 13 - Leases (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-leases-future-minimum-lease-payment-details" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">044 - Disclosure - Note 13 - Leases - Future Minimum Lease Payment (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-15-contingencies-details-textual" roleURI="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">045 - Disclosure - Note 15 - Contingencies (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element abstract="true" id="apt_AlphaProTechEngineeredProductsMember" name="AlphaProTechEngineeredProductsMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_BuildingSupplyMember" name="BuildingSupplyMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" name="CumulativeEquityInIncomeOfUnconsolidatedAffiliate" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:periodType="instant"/>
  <xsd:element id="apt_DepositPaidForEquipmentWriteoff" name="DepositPaidForEquipmentWriteoff" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="apt_DisposableProtectiveApparelMember" name="DisposableProtectiveApparelMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_DocumentAndEntityInformation" name="DocumentAndEntityInformation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_ExpenseToAcquireInventory" name="ExpenseToAcquireInventory" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_FinancialInformationAboutGeographicAreasTextBlock" name="FinancialInformationAboutGeographicAreasTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_GainLossOnFixedAssetsNonoperating" name="GainLossOnFixedAssetsNonoperating" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_HarmonyMember" name="HarmonyMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_IncentivePlan2020Member" name="IncentivePlan2020Member" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_InternationalMember" name="InternationalMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" name="LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_ManufacturingBuildingProductsMember" name="ManufacturingBuildingProductsMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" name="ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_ManufacturingOfBuildingProductsMember" name="ManufacturingOfBuildingProductsMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_MapleIndustriesAndAssociatesMember" name="MapleIndustriesAndAssociatesMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_NoteToFinancialStatementDetailsTextual" name="NoteToFinancialStatementDetailsTextual" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_NotesToFinancialStatements" name="NotesToFinancialStatements" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_NotesToFinancialStatementsAbstract" name="NotesToFinancialStatementsAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_NumberOfStoresOwned" name="NumberOfStoresOwned" nillable="true" substitutionGroup="xbrli:item" type="xbrli:pureItemType" xbrli:periodType="instant"/>
  <xsd:element id="apt_NumberOfStoresRented" name="NumberOfStoresRented" nillable="true" substitutionGroup="xbrli:item" type="xbrli:pureItemType" xbrli:periodType="instant"/>
  <xsd:element id="apt_OperatingLeaseExpenseNetOfAccretion" name="OperatingLeaseExpenseNetOfAccretion" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" name="OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_ProceedsFromPaymentsForStockOptionsExercised" name="ProceedsFromPaymentsForStockOptionsExercised" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_SewingProprietaryDisposableProtectiveApparelMember" name="SewingProprietaryDisposableProtectiveApparelMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_The2004PlanMember" name="The2004PlanMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="apt_TotalConsolidatedAssets" name="TotalConsolidatedAssets" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" name="statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details" name="statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-10-activity-of-business-segments-tables" name="statement-statement-note-10-activity-of-business-segments-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" name="statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-detailsD1C4ADA8-1657-492E-9F7B-C3B14637A96F" name="statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-detailsD1C4ADA8-1657-492E-9F7B-C3B14637A96F" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-11-financial-information-about-geographic-areas-tables" name="statement-statement-note-11-financial-information-about-geographic-areas-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-13-leases-future-minimum-lease-payment-details" name="statement-statement-note-13-leases-future-minimum-lease-payment-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-13-leases-tables" name="statement-statement-note-13-leases-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-3-stockbased-compensation-tables" name="statement-statement-note-3-stockbased-compensation-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details" name="statement-statement-note-3-stockedbased-compensation-stock-option-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-5-inventories-inventories-details" name="statement-statement-note-5-inventories-inventories-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-5-inventories-tables" name="statement-statement-note-5-inventories-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details" name="statement-statement-note-7-accrued-liabilities-accrued-liabilities-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-7-accrued-liabilities-tables" name="statement-statement-note-7-accrued-liabilities-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" name="statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables" name="statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" name="statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>apt-20230930_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 07:28PM UTC 2023-11-08--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events" xlink:href="apt-20230930.xsd#statement-note-16-subsequent-events" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SubsequentEventsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes" xlink:href="apt-20230930.xsd#statement-note-14-income-taxes" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions" xlink:href="apt-20230930.xsd#statement-note-12-related-party-transactions" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements" xlink:href="apt-20230930.xsd#statement-note-4-recent-accounting-pronouncements" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:href="apt-20230930.xsd#statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-1-the-company" xlink:href="apt-20230930.xsd#statement-note-1-the-company" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-1-the-company" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_NatureOfOperations" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information" xlink:href="apt-20230930.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentQuarterlyReport" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentTransitionReport" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCountry" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" xlink:type="arc"/>
    <link:definitionArc order="19" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus" xlink:type="arc"/>
    <link:definitionArc order="20" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityInteractiveDataCurrent" xlink:type="arc"/>
    <link:definitionArc order="21" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" xlink:type="arc"/>
    <link:definitionArc order="22" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntitySmallBusiness" xlink:type="arc"/>
    <link:definitionArc order="23" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" xlink:type="arc"/>
    <link:definitionArc order="24" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityShellCompany" xlink:type="arc"/>
    <link:definitionArc order="25" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="26" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>
    <link:definitionArc order="27" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" xlink:type="arc"/>
    <link:definitionArc order="28" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" xlink:type="arc"/>
    <link:definitionArc order="29" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:type="arc"/>
    <link:definitionArc order="30" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonrelatedPartyMember" xlink:label="us-gaap_NonrelatedPartyMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyMember" xlink:label="us-gaap_RelatedPartyMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="us-gaap_NonrelatedPartyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="us-gaap_RelatedPartyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Assets" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_Liabilities" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonrelatedPartyMember" xlink:label="us-gaap_NonrelatedPartyMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="us-gaap_NonrelatedPartyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_GainLossOnFixedAssetsNonoperating" xlink:label="apt_GainLossOnFixedAssetsNonoperating" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossAttributableToParent" xlink:label="us-gaap_IncomeLossAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingExpensesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpenses" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="apt_GainLossOnFixedAssetsNonoperating" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossAttributableToParent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:label="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation" xlink:href="apt-20230930.xsd#statement-note-3-stockbased-compensation" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanAxis" xlink:label="us-gaap_RestructuringPlanAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanDomain" xlink:label="us-gaap_RestructuringPlanDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanDomain" xlink:label="us-gaap_RestructuringPlanDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="us-gaap_RestructuringPlanDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="apt_The2004PlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RestructuringPlanAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RestructuringPlanDomain" xlink:to="apt_IncentivePlan2020Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="us-gaap_RestructuringPlanDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="apt_IncentivePlan2020Member" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories" xlink:href="apt-20230930.xsd#statement-note-5-inventories" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_InventoryDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:href="apt-20230930.xsd#statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:label="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis" xlink:label="us-gaap_InvestmentTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_EquityMethodInvesteeNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_EquityMethodInvesteeNameDomain" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_EquityMethodInvesteeNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:to="apt_AlphaProTechEngineeredProductsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="us-gaap_LegalEntityTypeOfCounterpartyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:to="apt_MapleIndustriesAndAssociatesMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_IN" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_EntityDomain" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="apt_ManufacturingBuildingProductsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="apt_ManufacturingOfBuildingProductsMember" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_InvestmentTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentTypeCategorizationMember" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities" xlink:href="apt-20230930.xsd#statement-note-7-accrued-liabilities" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:href="apt-20230930.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss" xlink:href="apt-20230930.xsd#statement-note-9-accumulated-other-comprehensive-loss" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="apt_BuildingSupplyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="apt_DisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_CorporateNonSegmentMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas" xlink:href="apt-20230930.xsd#statement-note-11-financial-information-about-geographic-areas" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:label="apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_CA" xlink:label="country_CA" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ReportableGeographicalComponentsMember" xlink:label="srt_ReportableGeographicalComponentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_US" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="srt_ReportableGeographicalComponentsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="apt_InternationalMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_CA" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-" xlink:href="apt-20230930.xsd#statement-note-13-leases-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies" xlink:href="apt-20230930.xsd#statement-note-15-contingencies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_LitigationCaseAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables" xlink:href="apt-20230930.xsd#statement-note-3-stockbased-compensation-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables" xlink:href="apt-20230930.xsd#statement-note-5-inventories-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables" xlink:href="apt-20230930.xsd#statement-note-7-accrued-liabilities-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:href="apt-20230930.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables" xlink:href="apt-20230930.xsd#statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables" xlink:href="apt-20230930.xsd#statement-note-13-leases-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual" xlink:href="apt-20230930.xsd#statement-note-3-stockbased-compensation-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanAxis" xlink:label="us-gaap_RestructuringPlanAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanDomain" xlink:label="us-gaap_RestructuringPlanDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanDomain" xlink:label="us-gaap_RestructuringPlanDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="us-gaap_RestructuringPlanDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="apt_The2004PlanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RestructuringPlanAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RestructuringPlanDomain" xlink:to="apt_IncentivePlan2020Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="us-gaap_RestructuringPlanDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="apt_IncentivePlan2020Member" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:href="apt-20230930.xsd#statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details" xlink:href="apt-20230930.xsd#statement-note-5-inventories-inventories-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:href="apt-20230930.xsd#statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ExpenseToAcquireInventory" xlink:label="apt_ExpenseToAcquireInventory" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NumberOfStoresOwned" xlink:label="apt_NumberOfStoresOwned" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NumberOfStoresRented" xlink:label="apt_NumberOfStoresRented" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentAggregateCost" xlink:label="us-gaap_EquityMethodInvestmentAggregateCost" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis" xlink:label="us-gaap_InvestmentTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfStores" xlink:label="us-gaap_NumberOfStores" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_EquityMethodInvesteeNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_EquityMethodInvesteeNameDomain" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_EquityMethodInvesteeNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:to="apt_AlphaProTechEngineeredProductsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="us-gaap_LegalEntityTypeOfCounterpartyDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:to="apt_MapleIndustriesAndAssociatesMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_IN" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_EntityDomain" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="apt_ManufacturingBuildingProductsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="apt_ManufacturingOfBuildingProductsMember" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_InvestmentTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_InvestmentTypeCategorizationMember" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NumberOfStores" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_NumberOfStoresOwned" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_NumberOfStoresRented" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AreaOfRealEstateProperty" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_ExpenseToAcquireInventory" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestments" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentAggregateCost" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:href="apt-20230930.xsd#statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedSalariesCurrent" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccruedSalariesCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccruedBonusesCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:href="apt-20230930.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:href="apt-20230930.xsd#statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NumberOfOperatingSegments" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="apt_BuildingSupplyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="apt_DisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:href="apt-20230930.xsd#statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="apt_BuildingSupplyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="apt_DisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_CorporateNonSegmentMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_TotalConsolidatedAssets" xlink:label="apt_TotalConsolidatedAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_OperatingSegmentsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="apt_BuildingSupplyMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SegmentDomain" xlink:to="apt_DisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="us-gaap_CorporateNonSegmentMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_TotalConsolidatedAssets" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:href="apt-20230930.xsd#statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_CA" xlink:label="country_CA" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_CA" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:href="apt-20230930.xsd#statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ReportableGeographicalComponentsMember" xlink:label="srt_ReportableGeographicalComponentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncurrentAssets" xlink:label="us-gaap_NoncurrentAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_US" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ConsolidationItemsDomain" xlink:to="srt_ReportableGeographicalComponentsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="apt_InternationalMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncurrentAssets" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual" xlink:href="apt-20230930.xsd#statement-note-13-leases-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseExpense" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:href="apt-20230930.xsd#statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual" xlink:href="apt-20230930.xsd#statement-note-15-contingencies-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_DepositPaidForEquipmentWriteoff" xlink:label="apt_DepositPaidForEquipmentWriteoff" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyDamagesSoughtValue" xlink:label="us-gaap_LossContingencyDamagesSoughtValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_LitigationCaseAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LossContingencyDamagesSoughtValue" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_DepositPaidForEquipmentWriteoff" xlink:type="arc"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>8
<FILENAME>apt-20230930_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 07:27PM UTC 2023-11-08--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_DocumentAndEntityInformation" xlink:label="apt_DocumentAndEntityInformation" xlink:type="locator"/>
    <link:label xlink:label="apt_DocumentAndEntityInformation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document And Entity Information</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_DocumentAndEntityInformation" xlink:to="apt_DocumentAndEntityInformation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:label xlink:label="apt_NoteToFinancialStatementDetailsTextual-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note To Financial Statement Details Textual</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_NoteToFinancialStatementDetailsTextual" xlink:to="apt_NoteToFinancialStatementDetailsTextual-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">2024</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-3-stockbased-compensation-tables" xlink:label="apt_statement-statement-note-3-stockbased-compensation-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-3-stockbased-compensation-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 3 - Stock-based Compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-3-stockbased-compensation-tables" xlink:to="apt_statement-statement-note-3-stockbased-compensation-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">2025</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-5-inventories-tables" xlink:label="apt_statement-statement-note-5-inventories-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-5-inventories-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 5 - Inventories</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-5-inventories-tables" xlink:to="apt_statement-statement-note-5-inventories-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-7-accrued-liabilities-tables" xlink:label="apt_statement-statement-note-7-accrued-liabilities-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-7-accrued-liabilities-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 7 - Accrued Liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-7-accrued-liabilities-tables" xlink:to="apt_statement-statement-note-7-accrued-liabilities-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:label="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 8 - Basic and Diluted Earnings Per Common Share</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:to="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-10-activity-of-business-segments-tables" xlink:label="apt_statement-statement-note-10-activity-of-business-segments-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-10-activity-of-business-segments-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Activity of Business Segments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-10-activity-of-business-segments-tables" xlink:to="apt_statement-statement-note-10-activity-of-business-segments-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-11-financial-information-about-geographic-areas-tables" xlink:label="apt_statement-statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-11-financial-information-about-geographic-areas-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Financial Information about Geographic Areas</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-11-financial-information-about-geographic-areas-tables" xlink:to="apt_statement-statement-note-11-financial-information-about-geographic-areas-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-13-leases-tables" xlink:label="apt_statement-statement-note-13-leases-tables" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-13-leases-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 13 - Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-13-leases-tables" xlink:to="apt_statement-statement-note-13-leases-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:label="apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 3 - Stocked-based Compensation - Stock Option Activity (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:to="apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-5-inventories-inventories-details" xlink:label="apt_statement-statement-note-5-inventories-inventories-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-5-inventories-inventories-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 5 - Inventories - Inventories (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-5-inventories-inventories-details" xlink:to="apt_statement-statement-note-5-inventories-inventories-details-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:label="apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 7 - Accrued Liabilities - Accrued Liabilities (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:to="apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:label="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 8 - Basic and Diluted Earnings Per Common Share - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:to="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:label="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:to="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock-based compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:label="apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:to="apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LiabilitiesCurrent</link:label>
    <link:label xlink:label="us-gaap_LiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Remaining nine months of 2023</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:label="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:to="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:label="apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:to="apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-13-leases-future-minimum-lease-payment-details" xlink:label="apt_statement-statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="locator"/>
    <link:label xlink:label="apt_statement-statement-note-13-leases-future-minimum-lease-payment-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 13 - Leases - Future Minimum Lease Payment (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_statement-statement-note-13-leases-future-minimum-lease-payment-details" xlink:to="apt_statement-statement-note-13-leases-future-minimum-lease-payment-details-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatements" xlink:label="apt_NotesToFinancialStatements" xlink:type="locator"/>
    <link:label xlink:label="apt_NotesToFinancialStatements-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes To Financial Statements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_NotesToFinancialStatements" xlink:to="apt_NotesToFinancialStatements-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:label xlink:label="apt_NotesToFinancialStatementsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes To Financial Statements [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="apt_NotesToFinancialStatementsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingExpensesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating expenses:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total comprehensive income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:label xlink:label="apt_AlphaProTechEngineeredProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Alpha Pro Tech Engineered Products [Member]</link:label>
    <link:label xlink:label="apt_AlphaProTechEngineeredProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Alpha ProTech Engineered Products [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_AlphaProTechEngineeredProductsMember" xlink:to="apt_AlphaProTechEngineeredProductsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ExpenseToAcquireInventory" xlink:label="apt_ExpenseToAcquireInventory" xlink:type="locator"/>
    <link:label xlink:label="apt_ExpenseToAcquireInventory-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_ExpenseToAcquireInventory</link:label>
    <link:label xlink:label="apt_ExpenseToAcquireInventory-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expense To Acquire Inventory</link:label>
    <link:label xlink:label="apt_ExpenseToAcquireInventory-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Purchases from our Joint venture.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ExpenseToAcquireInventory" xlink:to="apt_ExpenseToAcquireInventory-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:type="locator"/>
    <link:label xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate</link:label>
    <link:label xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cumulative Equity In Income Of Unconsolidated Affiliate</link:label>
    <link:label xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">CumulativeEquityInIncomeOfUnconsolidatedAffiliate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:to="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:label xlink:label="apt_BuildingSupplyMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Building Supply [Member]</link:label>
    <link:label xlink:label="apt_BuildingSupplyMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Building Supply [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_BuildingSupplyMember" xlink:to="apt_BuildingSupplyMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:label xlink:label="apt_DisposableProtectiveApparelMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposable Protective Apparel [Member]</link:label>
    <link:label xlink:label="apt_DisposableProtectiveApparelMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposable Protective Apparel [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_DisposableProtectiveApparelMember" xlink:to="apt_DisposableProtectiveApparelMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DepreciationDepletionAndAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label xlink:label="us-gaap_DepreciationDepletionAndAmortization-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_TotalConsolidatedAssets" xlink:label="apt_TotalConsolidatedAssets" xlink:type="locator"/>
    <link:label xlink:label="apt_TotalConsolidatedAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets</link:label>
    <link:label xlink:label="apt_TotalConsolidatedAssets-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Total consolidated assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_TotalConsolidatedAssets" xlink:to="apt_TotalConsolidatedAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AssetsCurrent</link:label>
    <link:label xlink:label="us-gaap_AssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options exercisable, Weighted average price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options exercisable, Options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest income, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, $.01 par value: 50,000,000 shares authorized; 11,636,446 and 12,226,306 shares outstanding as of September 30, 2023 and December 31, 2022, respectively</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Options outstanding, Weighted average price (in dollars per share)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Options outstanding, Weighted average price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CommonStockSharesAuthorized</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Shares Authorized (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Canceled/expired/forfeited, Weighted average price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockParOrStatedValuePerShare-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CommonStockParOrStatedValuePerShare</link:label>
    <link:label xlink:label="us-gaap_CommonStockParOrStatedValuePerShare-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Par or Stated Value Per Share (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Granted, Weighted average price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercised, Weighted average price (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label xlink:label="us-gaap_AccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total accrued liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CommonStockCapitalSharesReservedForFutureIssuance</link:label>
    <link:label xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Capital Shares Reserved for Future Issuance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeasesTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsPayableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Options outstanding, Options (in shares)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Options, Options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_ProductOrServiceAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProceedsFromSaleOfProductiveAssets</link:label>
    <link:label xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Sale of Productive Assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:to="us-gaap_ProceedsFromSaleOfProductiveAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_ProductsAndServicesDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductsAndServicesDomain" xlink:to="srt_ProductsAndServicesDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_EquityMethodInvesteeNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment, Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_EquityMethodInvesteeNameDomain" xlink:to="srt_EquityMethodInvesteeNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccruedBonusesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commissions and bonuses payable and general accrued liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedBonusesCurrent" xlink:to="us-gaap_AccruedBonusesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Canceled/expired/forfeited, Options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_LitigationCaseAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Litigation Case [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_LitigationCaseTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Litigation Case [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_LitigationCaseTypeDomain" xlink:to="srt_LitigationCaseTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedSalariesCurrent" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccruedSalariesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payroll expenses and taxes payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedSalariesCurrent" xlink:to="us-gaap_AccruedSalariesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PolicyTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PolicyTextBlockAbstract</link:label>
    <link:label xlink:label="us-gaap_PolicyTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PolicyTextBlockAbstract" xlink:to="us-gaap_PolicyTextBlockAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PrepaidExpenseCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment, Name [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncurrentAssets" xlink:label="us-gaap_NoncurrentAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NoncurrentAssets-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Long-lived assets</link:label>
    <link:label xlink:label="us-gaap_NoncurrentAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NoncurrentAssets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncurrentAssets" xlink:to="us-gaap_NoncurrentAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_StatementGeographicalAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_SegmentGeographicalDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label xlink:label="us-gaap_InventoryNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Inventory, Net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:to="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:label xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Manufacturing Coated Material and Sewing Proprietary Disposable Protective Apparel [Member]</link:label>
    <link:label xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Indicates a facility used for manufacturing coated material and sewing proprietary disposable protective apparel.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:to="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:label xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sewing Proprietary Disposable Protective Apparel [Member]</link:label>
    <link:label xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Indicates a facility used for sewing proprietary disposable protective apparel.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:to="apt_SewingProprietaryDisposableProtectiveApparelMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Revenues</link:label>
    <link:label xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net sales</link:label>
    <link:label xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer, Including Assessed Tax</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:label xlink:label="apt_ManufacturingBuildingProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Manufacturing Building Products [Member]</link:label>
    <link:label xlink:label="apt_ManufacturingBuildingProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Indicates a facility used for manufacturing building products.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ManufacturingBuildingProductsMember" xlink:to="apt_ManufacturingBuildingProductsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</link:label>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Purchases of property and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Add: dilutive effect of common stock options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:label xlink:label="apt_ManufacturingOfBuildingProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Manufacturing Of Building Products [Member]</link:label>
    <link:label xlink:label="apt_ManufacturingOfBuildingProductsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Indicates a facility used for manufacturing of building products.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ManufacturingOfBuildingProductsMember" xlink:to="apt_ManufacturingOfBuildingProductsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reconciliation of Assets from Segment to Consolidated [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:to="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesCurrentAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reconciliation of Revenue from Segments to Consolidated [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:to="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInOperatingLeaseLiability</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lease liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Assets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Assets</link:label>
    <link:label xlink:label="us-gaap_Assets-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanNameAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameDomain" xlink:to="us-gaap_PlanNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Flows From Operating Activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseExpense</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseExpense" xlink:to="us-gaap_OperatingLeaseExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsReceivableNetCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts receivable, net of allowance for doubtful accounts</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NumberOfOperatingSegments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NumberOfOperatingSegments</link:label>
    <link:label xlink:label="us-gaap_NumberOfOperatingSegments-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of Operating Segments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfOperatingSegments" xlink:to="us-gaap_NumberOfOperatingSegments-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyDamagesSoughtValue" xlink:label="us-gaap_LossContingencyDamagesSoughtValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LossContingencyDamagesSoughtValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LossContingencyDamagesSoughtValue</link:label>
    <link:label xlink:label="us-gaap_LossContingencyDamagesSoughtValue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss Contingency, Damages Sought, Value</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingencyDamagesSoughtValue" xlink:to="us-gaap_LossContingencyDamagesSoughtValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Treasury Stock Acquired, Purchase Price Significantly in Excess of Current Fair Value, Description</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquityAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shareholders' equity:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NonoperatingIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NonoperatingIncomeExpense</link:label>
    <link:label xlink:label="us-gaap_NonoperatingIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total other income (loss)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SegmentReportingDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AwardTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Definite-lived intangible assets, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</link:label>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents, beginning of the period</link:label>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents, end of the period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</link:label>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Increase (decrease) in cash and cash equivalents</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Liabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Liabilities</link:label>
    <link:label xlink:label="us-gaap_Liabilities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInFinancingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in financing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestrictedStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockMember" xlink:to="us-gaap_RestrictedStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommitmentsAndContingencies-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and contingincies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingIncomeLoss</link:label>
    <link:label xlink:label="us-gaap_OperatingIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income from operations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other income (loss):</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInOperatingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeStockOptionMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Option [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInInvestingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:label xlink:label="apt_InternationalMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">International Member</link:label>
    <link:label xlink:label="apt_InternationalMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">International [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_InternationalMember" xlink:to="apt_InternationalMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GrossProfit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GrossProfit</link:label>
    <link:label xlink:label="us-gaap_GrossProfit-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CostOfGoodsAndServicesSold-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of goods sold, excluding depreciation and amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred income tax liabilities, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_ConsolidationItemsDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ConsolidationItemsDomain" xlink:to="srt_ConsolidationItemsDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:label xlink:label="apt_The2004PlanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">The2004 Plan Member</link:label>
    <link:label xlink:label="apt_The2004PlanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information regarding the 2004 plan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_The2004PlanMember" xlink:to="apt_The2004PlanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ReportableGeographicalComponentsMember" xlink:label="srt_ReportableGeographicalComponentsMember" xlink:type="locator"/>
    <link:label xlink:label="srt_ReportableGeographicalComponentsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reportable Geographical Components [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ReportableGeographicalComponentsMember" xlink:to="srt_ReportableGeographicalComponentsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentAggregateCost" xlink:label="us-gaap_EquityMethodInvestmentAggregateCost" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentAggregateCost-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EquityMethodInvestmentAggregateCost</link:label>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentAggregateCost-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Aggregate Cost</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentAggregateCost" xlink:to="us-gaap_EquityMethodInvestmentAggregateCost-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property and equipment, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Goodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_ConsolidationItemsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment</link:label>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Other than Temporary Impairment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:to="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Treasury stock excise tax</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:label xlink:label="apt_HarmonyMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Harmony [Member]</link:label>
    <link:label xlink:label="apt_HarmonyMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information by name of investment.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_HarmonyMember" xlink:to="apt_HarmonyMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonrelatedPartyMember" xlink:label="us-gaap_NonrelatedPartyMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NonrelatedPartyMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Nonrelated Party [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonrelatedPartyMember" xlink:to="us-gaap_NonrelatedPartyMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:label="apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:type="locator"/>
    <link:label xlink:label="apt_FinancialInformationAboutGeographicAreasTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financial Information about Geographic Areas [Text Block]</link:label>
    <link:label xlink:label="apt_FinancialInformationAboutGeographicAreasTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Entire disclosure for financial information about geographic areas.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:to="apt_FinancialInformationAboutGeographicAreasTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:label="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Method Investments and Joint Ventures Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:to="us-gaap_EquityMethodInvestmentsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EquityMethodInvestmentOwnershipPercentage</link:label>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Ownership Percentage</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Flows From Investing Activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsForRepurchaseOfCommonStock</link:label>
    <link:label xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Repurchase of common stock</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetainedEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity investment in unconsolidated affiliate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:to="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity in income (loss) of unconsolidated affiliate</link:label>
    <link:label xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income (Loss) from Equity Method Investments</link:label>
    <link:label xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Equity in income of unconsolidated affiliate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdditionalPaidInCapitalMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityMethodInvestments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EquityMethodInvestments</link:label>
    <link:label xlink:label="us-gaap_EquityMethodInvestments-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Method Investments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestments" xlink:to="us-gaap_EquityMethodInvestments-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_CA" xlink:label="country_CA" xlink:type="locator"/>
    <link:label xlink:label="country_CA-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">CANADA</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_CA" xlink:to="country_CA-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related Party Transactions Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Provision for income taxes</link:label>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Provision for income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementEquityComponentsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityComponentDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from exercise of stock options</link:label>
    <link:label xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The cash inflow from or (outflow of) cash for stock options exercised during the period.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:to="apt_ProceedsFromPaymentsForStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingExpenses-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingExpenses</link:label>
    <link:label xlink:label="us-gaap_OperatingExpenses-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total operating expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive Income (Loss) Note [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:to="us-gaap_ComprehensiveIncomeNoteTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AllocatedShareBasedCompensationExpense</link:label>
    <link:label xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NumberOfStoresOwned" xlink:label="apt_NumberOfStoresOwned" xlink:type="locator"/>
    <link:label xlink:label="apt_NumberOfStoresOwned-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_NumberOfStoresOwned</link:label>
    <link:label xlink:label="apt_NumberOfStoresOwned-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number Of Stores Owned</link:label>
    <link:label xlink:label="apt_NumberOfStoresOwned-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the number of stores owned.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_NumberOfStoresOwned" xlink:to="apt_NumberOfStoresOwned-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NumberOfStoresRented" xlink:label="apt_NumberOfStoresRented" xlink:type="locator"/>
    <link:label xlink:label="apt_NumberOfStoresRented-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_NumberOfStoresRented</link:label>
    <link:label xlink:label="apt_NumberOfStoresRented-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number Of Stores Rented</link:label>
    <link:label xlink:label="apt_NumberOfStoresRented-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the number of stores rented.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_NumberOfStoresRented" xlink:to="apt_NumberOfStoresRented-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_GainLossOnFixedAssetsNonoperating" xlink:label="apt_GainLossOnFixedAssetsNonoperating" xlink:type="locator"/>
    <link:label xlink:label="apt_GainLossOnFixedAssetsNonoperating-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss on fixed assets</link:label>
    <link:label xlink:label="apt_GainLossOnFixedAssetsNonoperating-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of realized and unrealized gain (loss) on fixed assets, operating activities.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_GainLossOnFixedAssetsNonoperating" xlink:to="apt_GainLossOnFixedAssetsNonoperating-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentQuarterlyReport-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_DocumentQuarterlyReport</link:label>
    <link:label xlink:label="dei_DocumentQuarterlyReport-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityIncorporationStateCountryCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:label xlink:label="dei_AmendmentFlag-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountingPoliciesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ComprehensiveIncomeNetOfTax</link:label>
    <link:label xlink:label="us-gaap_ComprehensiveIncomeNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Comprehensive income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentTransitionReport-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_DocumentTransitionReport</link:label>
    <link:label xlink:label="dei_DocumentTransitionReport-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:label xlink:label="dei_CityAreaCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_CityAreaCode</link:label>
    <link:label xlink:label="dei_CityAreaCode-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityInteractiveDataCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityInteractiveDataCurrent</link:label>
    <link:label xlink:label="dei_EntityInteractiveDataCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyMember" xlink:label="us-gaap_RelatedPartyMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedPartyMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related Party [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyMember" xlink:to="us-gaap_RelatedPartyMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:label xlink:label="country_IN-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">INDIA</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_IN" xlink:to="country_IN-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:label xlink:label="dei_SecurityExchangeName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Outstanding (in shares)</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance (in shares)</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:label xlink:label="dei_Security12bTitle-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:label xlink:label="dei_CurrentFiscalYearEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="locator"/>
    <link:label xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lawsuit With Defendants in Utah for Undelivered Equipment [Member]</link:label>
    <link:label xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Lawsuit With Defendants in Utah for Undelivered Equipment.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:to="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DepositPaidForEquipmentWriteoff" xlink:label="apt_DepositPaidForEquipmentWriteoff" xlink:type="locator"/>
    <link:label xlink:label="apt_DepositPaidForEquipmentWriteoff-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_DepositPaidForEquipmentWriteoff</link:label>
    <link:label xlink:label="apt_DepositPaidForEquipmentWriteoff-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deposit Paid for Equipment, Write-off</link:label>
    <link:label xlink:label="apt_DepositPaidForEquipmentWriteoff-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Write-off amount of deposit paid for equipment.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_DepositPaidForEquipmentWriteoff" xlink:to="apt_DepositPaidForEquipmentWriteoff-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:label xlink:label="apt_MapleIndustriesAndAssociatesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maple Industries and Associates [Member]</link:label>
    <link:label xlink:label="apt_MapleIndustriesAndAssociatesMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Maple industries and associates [member</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_MapleIndustriesAndAssociatesMember" xlink:to="apt_MapleIndustriesAndAssociatesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentFiscalPeriodFocus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentFiscalYearFocus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentPeriodEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_DocumentPeriodEndDate</link:label>
    <link:label xlink:label="dei_DocumentPeriodEndDate-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInPrepaidExpense</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityFileNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityFileNumber</link:label>
    <link:label xlink:label="dei_EntityFileNumber-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity of Counterparty, Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityEmergingGrowthCompany-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityEmergingGrowthCompany</link:label>
    <link:label xlink:label="dei_EntityEmergingGrowthCompany-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity Type of Counterparty [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:to="us-gaap_LegalEntityTypeOfCounterpartyDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentType-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_DocumentType</link:label>
    <link:label xlink:label="dei_DocumentType-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:label xlink:label="dei_EntitySmallBusiness-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntitySmallBusiness</link:label>
    <link:label xlink:label="dei_EntitySmallBusiness-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityShellCompany-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityShellCompany</link:label>
    <link:label xlink:label="dei_EntityShellCompany-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentInformationLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationLineItems-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentInformationTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationTable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfStores" xlink:label="us-gaap_NumberOfStores" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NumberOfStores-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NumberOfStores</link:label>
    <link:label xlink:label="us-gaap_NumberOfStores-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of Stores</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfStores" xlink:to="us-gaap_NumberOfStores-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AreaOfRealEstateProperty-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AreaOfRealEstateProperty</link:label>
    <link:label xlink:label="us-gaap_AreaOfRealEstateProperty-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Area of Real Estate Property (Square Foot)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AreaOfRealEstateProperty" xlink:to="us-gaap_AreaOfRealEstateProperty-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityFilerCategory-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityFilerCategory</link:label>
    <link:label xlink:label="dei_EntityFilerCategory-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCurrentReportingStatus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityCurrentReportingStatus</link:label>
    <link:label xlink:label="dei_EntityCurrentReportingStatus-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementBusinessSegmentsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_StatementBusinessSegmentsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SegmentDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentDomain" xlink:to="us-gaap_SegmentDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossAttributableToParent" xlink:label="us-gaap_IncomeLossAttributableToParent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeLossAttributableToParent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncomeLossAttributableToParent</link:label>
    <link:label xlink:label="us-gaap_IncomeLossAttributableToParent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income before provision for income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossAttributableToParent" xlink:to="us-gaap_IncomeLossAttributableToParent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Diluted weighted average common shares outstanding (in shares)</link:label>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Diluted weighted average common shares outstanding (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Common stock repurchased and retired</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccountsReceivable</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityTaxIdentificationNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCentralIndexKey-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityRegistrantName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityRegistrantName</link:label>
    <link:label xlink:label="dei_EntityRegistrantName-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityDomain" xlink:to="dei_EntityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:label xlink:label="dei_LegalEntityAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LegalEntityAxis" xlink:to="dei_LegalEntityAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressAddressLine1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfFinancialPositionAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareDiluted-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Diluted earnings per common share (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Basic weighted average common shares outstanding (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInDueFromRelatedParties</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, related party</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:to="us-gaap_IncreaseDecreaseInDueFromRelatedParties-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressCityOrTown-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressCountry-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Country</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCountry" xlink:to="dei_EntityAddressCountry-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressPostalZipCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareBasic-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Basic earnings per common share (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressStateOrProvince-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfCashFlowsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfStockholdersEquityAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockRepurchasedAndRetiredDuringPeriodValue</link:label>
    <link:label xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Common stock repurchased and retired</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:to="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockRepurchasedAndRetiredDuringPeriodShares</link:label>
    <link:label xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Common stock repurchased and retired (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:to="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeStatementAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Accrued Liabilities [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InvestmentTypeCategorizationMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentTypeCategorizationMember" xlink:to="us-gaap_InvestmentTypeCategorizationMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInInventories-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInInventories</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInInventories-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:label xlink:label="dei_TradingSymbol-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis" xlink:label="us-gaap_InvestmentTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InvestmentTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NatureOfOperations-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Nature of Operations [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NatureOfOperations" xlink:to="us-gaap_NatureOfOperations-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_LocalPhoneNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_LocalPhoneNumber</link:label>
    <link:label xlink:label="dei_LocalPhoneNumber-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options exercised (in shares)</link:label>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Exercised, Options (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TableTextBlock</link:label>
    <link:label xlink:label="us-gaap_TableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes Tables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_TableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanAxis" xlink:label="us-gaap_RestructuringPlanAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestructuringPlanAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restructuring Plan [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="us-gaap_RestructuringPlanAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanDomain" xlink:label="us-gaap_RestructuringPlanDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestructuringPlanDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restructuring Plan [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestructuringPlanDomain" xlink:to="us-gaap_RestructuringPlanDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Options exercised</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update and Change in Accounting Principle [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related Party, Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedPartyDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related Party, Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="us-gaap_RelatedPartyDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling, general and administrative</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Flows From Financing Activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Granted, Options (in shares)</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Raw materials</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital</link:label>
    <link:label xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Equity Method Investment, Distribution, Return of Capital</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:to="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LiabilitiesAndStockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and shareholders' equity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finished goods</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Work in process</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:label xlink:label="country_US-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">UNITED STATES</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_US" xlink:to="country_US-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CorporateNonSegmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Corporate, Non-Segment [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CorporateNonSegmentMember" xlink:to="us-gaap_CorporateNonSegmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated other comprehensive loss</link:label>
    <link:label xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:label="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:type="locator"/>
    <link:label xlink:label="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment</link:label>
    <link:label xlink:label="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss)- foreign currency translation gain (loss)</link:label>
    <link:label xlink:label="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:to="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:label xlink:label="apt_IncentivePlan2020Member-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Incentive Plan 2020 [Member]</link:label>
    <link:label xlink:label="apt_IncentivePlan2020Member-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the 2020 incentive plan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_IncentivePlan2020Member" xlink:to="apt_IncentivePlan2020Member-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Changes in operating assets and liabilities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total shareholders' equity</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisclosureTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DisclosureTextBlockAbstract</link:label>
    <link:label xlink:label="us-gaap_DisclosureTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes to Financial Statements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureTextBlockAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease liabilities, net of current portion</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementClassOfStockAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total lease liabilities</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SubsequentEventsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingSegmentsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Segments [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingSegmentsMember" xlink:to="us-gaap_OperatingSegmentsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Right-of-use assets</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EquityMethodInvestmentDividendsOrDistributions</link:label>
    <link:label xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Equity Method Investment, Distribution</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:to="us-gaap_EquityMethodInvestmentDividendsOrDistributions-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total future minimum lease payments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:type="arc"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:label xlink:label="apt_OperatingLeaseExpenseNetOfAccretion-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating lease expense, net of accretion</link:label>
    <link:label xlink:label="apt_OperatingLeaseExpenseNetOfAccretion-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the amount of operating lease expense, net of accretion during the period.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="apt_OperatingLeaseExpenseNetOfAccretion" xlink:to="apt_OperatingLeaseExpenseNetOfAccretion-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiability</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finance Lease, Liability, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Less imputed interest</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">2026</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:type="arc"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>apt-20230930_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 07:28PM UTC 2023-11-08--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events" xlink:href="apt-20230930.xsd#statement-note-16-subsequent-events" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SubsequentEventsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes" xlink:href="apt-20230930.xsd#statement-note-14-income-taxes" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions" xlink:href="apt-20230930.xsd#statement-note-12-related-party-transactions" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements" xlink:href="apt-20230930.xsd#statement-note-4-recent-accounting-pronouncements" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:href="apt-20230930.xsd#statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-1-the-company" xlink:href="apt-20230930.xsd#statement-note-1-the-company" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-1-the-company" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_NatureOfOperations" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information" xlink:href="apt-20230930.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentQuarterlyReport-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentTransitionReport-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCountry" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode-2" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber-2" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" xlink:type="arc"/>
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" xlink:type="arc"/>
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus-2" xlink:type="arc"/>
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityInteractiveDataCurrent-2" xlink:type="arc"/>
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory-2" xlink:type="arc"/>
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntitySmallBusiness-2" xlink:type="arc"/>
    <link:presentationArc order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany-2" xlink:type="arc"/>
    <link:presentationArc order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityShellCompany-2" xlink:type="arc"/>
    <link:presentationArc order="24" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:type="arc"/>
    <link:presentationArc order="25" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>
    <link:presentationArc order="26" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" xlink:type="arc"/>
    <link:presentationArc order="27" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" xlink:type="arc"/>
    <link:presentationArc order="28" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:type="arc"/>
    <link:presentationArc order="29" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonrelatedPartyMember" xlink:label="us-gaap_NonrelatedPartyMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyMember" xlink:label="us-gaap_RelatedPartyMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_NonrelatedPartyMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsCurrent-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Assets-3" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_Liabilities-3" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonrelatedPartyMember" xlink:label="us-gaap_NonrelatedPartyMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_NonrelatedPartyMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_GainLossOnFixedAssetsNonoperating" xlink:label="apt_GainLossOnFixedAssetsNonoperating" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossAttributableToParent" xlink:label="us-gaap_IncomeLossAttributableToParent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingExpensesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpenses-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="apt_GainLossOnFixedAssetsNonoperating" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossAttributableToParent-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NetIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:label="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-5" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_RetainedEarningsMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchasedAndRetiredDuringPeriodShares-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchasedAndRetiredDuringPeriodValue-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue-n8" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-n8" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding-5" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments-n9" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable-n9" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInDueFromRelatedParties-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories-n9" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n9" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-4" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation" xlink:href="apt-20230930.xsd#statement-note-3-stockbased-compensation" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanAxis" xlink:label="us-gaap_RestructuringPlanAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanDomain" xlink:label="us-gaap_RestructuringPlanDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="us-gaap_RestructuringPlanDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="apt_The2004PlanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RestructuringPlanAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="apt_IncentivePlan2020Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="apt_IncentivePlan2020Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories" xlink:href="apt-20230930.xsd#statement-note-5-inventories" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_InventoryDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:href="apt-20230930.xsd#statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:label="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis" xlink:label="us-gaap_InvestmentTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_EquityMethodInvesteeNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="apt_AlphaProTechEngineeredProductsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="apt_MapleIndustriesAndAssociatesMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_IN" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="apt_ManufacturingBuildingProductsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="apt_ManufacturingOfBuildingProductsMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_InvestmentTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities" xlink:href="apt-20230930.xsd#statement-note-7-accrued-liabilities" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:href="apt-20230930.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss" xlink:href="apt-20230930.xsd#statement-note-9-accumulated-other-comprehensive-loss" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:label="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ComprehensiveIncomeNoteTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="us-gaap_OperatingSegmentsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="apt_BuildingSupplyMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="apt_DisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="us-gaap_CorporateNonSegmentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas" xlink:href="apt-20230930.xsd#statement-note-11-financial-information-about-geographic-areas" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:label="apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_CA" xlink:label="country_CA" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ReportableGeographicalComponentsMember" xlink:label="srt_ReportableGeographicalComponentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_US" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ReportableGeographicalComponentsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="apt_InternationalMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_CA" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-" xlink:href="apt-20230930.xsd#statement-note-13-leases-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies" xlink:href="apt-20230930.xsd#statement-note-15-contingencies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_LitigationCaseAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseAxis" xlink:to="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables" xlink:href="apt-20230930.xsd#statement-note-3-stockbased-compensation-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-3-stockbased-compensation-tables" xlink:label="apt_statement-statement-note-3-stockbased-compensation-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-3-stockbased-compensation-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables" xlink:href="apt-20230930.xsd#statement-note-5-inventories-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-5-inventories-tables" xlink:label="apt_statement-statement-note-5-inventories-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-5-inventories-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables" xlink:href="apt-20230930.xsd#statement-note-7-accrued-liabilities-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-7-accrued-liabilities-tables" xlink:label="apt_statement-statement-note-7-accrued-liabilities-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-7-accrued-liabilities-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:href="apt-20230930.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:label="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-10-activity-of-business-segments-tables" xlink:label="apt_statement-statement-note-10-activity-of-business-segments-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-10-activity-of-business-segments-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables" xlink:href="apt-20230930.xsd#statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-11-financial-information-about-geographic-areas-tables" xlink:label="apt_statement-statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:label="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-11-financial-information-about-geographic-areas-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables" xlink:href="apt-20230930.xsd#statement-note-13-leases-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-13-leases-tables" xlink:label="apt_statement-statement-note-13-leases-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-13-leases-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual" xlink:href="apt-20230930.xsd#statement-note-3-stockbased-compensation-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_The2004PlanMember" xlink:label="apt_The2004PlanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanAxis" xlink:label="us-gaap_RestructuringPlanAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestructuringPlanDomain" xlink:label="us-gaap_RestructuringPlanDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="us-gaap_RestructuringPlanDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="apt_The2004PlanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_RestructuringPlanAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestructuringPlanAxis" xlink:to="apt_IncentivePlan2020Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="apt_IncentivePlan2020Member" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_EmployeeStockOptionMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:href="apt-20230930.xsd#statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:label="apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-8" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised-8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber-5" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice-5" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details" xlink:href="apt-20230930.xsd#statement-note-5-inventories-inventories-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-5-inventories-inventories-details" xlink:label="apt_statement-statement-note-5-inventories-inventories-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-5-inventories-inventories-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:href="apt-20230930.xsd#statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ExpenseToAcquireInventory" xlink:label="apt_ExpenseToAcquireInventory-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NumberOfStoresOwned" xlink:label="apt_NumberOfStoresOwned-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NumberOfStoresRented" xlink:label="apt_NumberOfStoresRented-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_IN" xlink:label="country_IN" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentAggregateCost" xlink:label="us-gaap_EquityMethodInvestmentAggregateCost-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment" xlink:label="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis" xlink:label="us-gaap_InvestmentTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember" xlink:label="us-gaap_InvestmentTypeCategorizationMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:label="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfStores" xlink:label="us-gaap_NumberOfStores-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" xlink:label="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_EquityMethodInvesteeNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="us-gaap_LegalEntityTypeOfCounterpartyDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="us-gaap_InvestmentTypeCategorizationMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="apt_AlphaProTechEngineeredProductsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis" xlink:to="apt_MapleIndustriesAndAssociatesMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_IN" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ProductOrServiceAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="apt_ManufacturingBuildingProductsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="apt_SewingProprietaryDisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="apt_ManufacturingOfBuildingProductsMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_InvestmentTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentTypeAxis" xlink:to="apt_HarmonyMember" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NumberOfStores-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_NumberOfStoresOwned-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_NumberOfStoresRented-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AreaOfRealEstateProperty-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_ExpenseToAcquireInventory-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromSaleOfProductiveAssets-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments-2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestments-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentAggregateCost-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate-2" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital-2" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentDividendsOrDistributions-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:href="apt-20230930.xsd#statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:label="apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedSalariesCurrent" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccruedSalariesCurrent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccruedBonusesCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccruedLiabilitiesCurrent-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:href="apt-20230930.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:label="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:href="apt-20230930.xsd#statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax-n2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax-n2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="us-gaap_NumberOfOperatingSegments-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NumberOfOperatingSegments-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:label="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="us-gaap_OperatingSegmentsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="apt_BuildingSupplyMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="apt_DisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:href="apt-20230930.xsd#statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:label="apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="us-gaap_OperatingSegmentsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="apt_BuildingSupplyMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="apt_DisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="us-gaap_CorporateNonSegmentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:href="apt-20230930.xsd#statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_TotalConsolidatedAssets" xlink:label="apt_TotalConsolidatedAssets" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:label="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember" xlink:label="us-gaap_CorporateNonSegmentMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember" xlink:label="us-gaap_OperatingSegmentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="us-gaap_OperatingSegmentsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="apt_BuildingSupplyMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="apt_DisposableProtectiveApparelMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="us-gaap_CorporateNonSegmentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_TotalConsolidatedAssets" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:href="apt-20230930.xsd#statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_CA" xlink:label="country_CA" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_CA" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:href="apt-20230930.xsd#statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:label="apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis" xlink:label="srt_ConsolidationItemsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain" xlink:label="srt_ConsolidationItemsDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ReportableGeographicalComponentsMember" xlink:label="srt_ReportableGeographicalComponentsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncurrentAssets" xlink:label="us-gaap_NoncurrentAssets-1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ConsolidationItemsDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_US" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidationItemsAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidationItemsAxis" xlink:to="srt_ReportableGeographicalComponentsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="apt_InternationalMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-1" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncurrentAssets-1" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual" xlink:href="apt-20230930.xsd#statement-note-13-leases-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseExpense-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:href="apt-20230930.xsd#statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_statement-statement-note-13-leases-future-minimum-lease-payment-details" xlink:label="apt_statement-statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_statement-statement-note-13-leases-future-minimum-lease-payment-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n8" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual" xlink:href="apt-20230930.xsd#statement-note-15-contingencies-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_DepositPaidForEquipmentWriteoff" xlink:label="apt_DepositPaidForEquipmentWriteoff-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseAxis" xlink:label="srt_LitigationCaseAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_LitigationCaseTypeDomain" xlink:label="srt_LitigationCaseTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyDamagesSoughtValue" xlink:label="us-gaap_LossContingencyDamagesSoughtValue-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="apt_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseAxis" xlink:to="srt_LitigationCaseTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_LitigationCaseAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_LitigationCaseAxis" xlink:to="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LossContingencyDamagesSoughtValue-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="apt_DepositPaidForEquipmentWriteoff-2" xlink:type="arc"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>10
<FILENAME>apt-20230930_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 07:28PM UTC 2023-11-08--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquity" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_GainLossOnFixedAssetsNonoperating" xlink:label="apt_GainLossOnFixedAssetsNonoperating" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossAttributableToParent" xlink:label="us-gaap_IncomeLossAttributableToParent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingExpenses" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="apt_GainLossOnFixedAssetsNonoperating" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossAttributableToParent" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossAttributableToParent" xlink:to="us-gaap_NonoperatingIncomeExpense" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossAttributableToParent" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:label="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="apt-20230930.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230930.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230930.xsd#apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:label="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:label="us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInDueFromRelatedParties" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:type="arc"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="arc"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="apt_ProceedsFromPaymentsForStockOptionsExercised" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details" xlink:href="apt-20230930.xsd#statement-note-5-inventories-inventories-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:href="apt-20230930.xsd#statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="us-gaap_AccruedBonusesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedSalariesCurrent" xlink:label="us-gaap_AccruedSalariesCurrent" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedSalariesCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedBonusesCurrent" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:href="apt-20230930.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:href="apt-20230930.xsd#statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423108901792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document And Entity Information - shares<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Nov. 01, 2023</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_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Sep. 30,  2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-15725<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Alpha Pro Tech, Ltd.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">63-1009183<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">53 Wellington Street East<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">L4G 1H6<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Aurora<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">ON<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityAddressCountry', window );">Entity Address, Country</a></td>
<td class="text">CA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_CityAreaCode', window );">City Area Code</a></td>
<td class="text">905<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">479-0654<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">APT<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSEAMER<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,647,096<span></span>
</td>
</tr>
<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">0000884269<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentInformationLineItems</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_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_EntityAddressCountry">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>ISO 3166-1 alpha-2 country 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_EntityAddressCountry</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:countryCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423107741072">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Unaudited) - USD ($)<br></strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><sup>[1]</sup></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 18,163,000<span></span>
</td>
<td colspan="2" class="nump">$ 16,290,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">21,526,000<span></span>
</td>
<td colspan="2" class="nump">24,397,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">4,558,000<span></span>
</td>
<td colspan="2" class="nump">4,902,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">52,687,000<span></span>
</td>
<td colspan="2" class="nump">52,562,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">5,543,000<span></span>
</td>
<td colspan="2" class="nump">5,742,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">55,000<span></span>
</td>
<td colspan="2" class="nump">55,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Definite-lived intangible assets, net</a></td>
<td class="nump">0<span></span>
</td>
<td colspan="2" class="nump">1,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-use assets</a></td>
<td class="nump">1,210,000<span></span>
</td>
<td colspan="2" class="nump">1,725,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures', window );">Equity investment in unconsolidated affiliate</a></td>
<td class="nump">5,116,000<span></span>
</td>
<td colspan="2" class="nump">4,718,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">64,611,000<span></span>
</td>
<td colspan="2" class="nump">64,803,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">320,000<span></span>
</td>
<td colspan="2" class="nump">674,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">885,000<span></span>
</td>
<td colspan="2" class="nump">833,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Lease liabilities</a></td>
<td class="nump">777,000<span></span>
</td>
<td colspan="2" class="nump">899,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">1,982,000<span></span>
</td>
<td colspan="2" class="nump">2,406,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Lease liabilities, net of current portion</a></td>
<td class="nump">474,000<span></span>
</td>
<td colspan="2" class="nump">875,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income tax liabilities, net</a></td>
<td class="nump">764,000<span></span>
</td>
<td colspan="2" class="nump">764,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">3,220,000<span></span>
</td>
<td colspan="2" class="nump">4,045,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders' equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $.01 par value: 50,000,000 shares authorized; 11,636,446 and 12,226,306 shares outstanding as of September 30, 2023 and December 31, 2022, respectively</a></td>
<td class="nump">117,000<span></span>
</td>
<td colspan="2" class="nump">123,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">62,757,000<span></span>
</td>
<td colspan="2" class="nump">62,124,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(1,483,000)<span></span>
</td>
<td colspan="2" class="num">(1,489,000)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders' equity</a></td>
<td class="nump">61,391,000<span></span>
</td>
<td colspan="2" class="nump">60,758,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders' equity</a></td>
<td class="nump">64,611,000<span></span>
</td>
<td colspan="2" class="nump">64,803,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember', window );">Nonrelated Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowance for doubtful accounts</a></td>
<td class="nump">7,448,000<span></span>
</td>
<td colspan="2" class="nump">5,382,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember', window );">Related Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowance for doubtful accounts</a></td>
<td class="nump">$ 992,000<span></span>
</td>
<td colspan="2" class="nump">$ 1,591,000<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">The condensed consolidated balance sheet as of December 31, 2022, has been prepared using information from the audited consolidated balance sheet as of that date.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483154/926-20-50-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482598/350-20-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in equity method investee and investment in and advance to affiliate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-5<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482955/340-10-05-5<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483032/340-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480842/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423111372656">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals) - USD ($)<br></strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common Stock, Par or Stated Value Per Share (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common Stock, Shares Authorized (in shares)</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common Stock, Shares, Outstanding (in shares)</a></td>
<td class="nump">11,636,446<span></span>
</td>
<td class="nump">12,226,306<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember', window );">Nonrelated Party [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts Receivable, Allowance for Credit Loss, Current</a></td>
<td class="nump">$ 35,000<span></span>
</td>
<td class="nump">$ 45,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_NonrelatedPartyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423108997168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Income (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 16,053,000<span></span>
</td>
<td class="nump">$ 14,722,000<span></span>
</td>
<td class="nump">$ 45,967,000<span></span>
</td>
<td class="nump">$ 49,756,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of goods sold, excluding depreciation and amortization</a></td>
<td class="nump">10,018,000<span></span>
</td>
<td class="nump">9,904,000<span></span>
</td>
<td class="nump">28,844,000<span></span>
</td>
<td class="nump">32,884,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">6,035,000<span></span>
</td>
<td class="nump">4,818,000<span></span>
</td>
<td class="nump">17,123,000<span></span>
</td>
<td class="nump">16,872,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative</a></td>
<td class="nump">4,387,000<span></span>
</td>
<td class="nump">3,970,000<span></span>
</td>
<td class="nump">13,275,000<span></span>
</td>
<td class="nump">12,341,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">225,000<span></span>
</td>
<td class="nump">201,000<span></span>
</td>
<td class="nump">687,000<span></span>
</td>
<td class="nump">641,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">4,612,000<span></span>
</td>
<td class="nump">4,171,000<span></span>
</td>
<td class="nump">13,962,000<span></span>
</td>
<td class="nump">12,982,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">1,423,000<span></span>
</td>
<td class="nump">647,000<span></span>
</td>
<td class="nump">3,161,000<span></span>
</td>
<td class="nump">3,890,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Other income (loss):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_GainLossOnFixedAssetsNonoperating', window );">Loss on fixed assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(490,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity in income (loss) of unconsolidated affiliate</a></td>
<td class="nump">180,000<span></span>
</td>
<td class="num">(13,000)<span></span>
</td>
<td class="nump">392,000<span></span>
</td>
<td class="nump">87,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNonoperatingNet', window );">Interest income, net</a></td>
<td class="nump">222,000<span></span>
</td>
<td class="nump">28,000<span></span>
</td>
<td class="nump">549,000<span></span>
</td>
<td class="nump">39,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Total other income (loss)</a></td>
<td class="nump">402,000<span></span>
</td>
<td class="nump">15,000<span></span>
</td>
<td class="nump">941,000<span></span>
</td>
<td class="num">(364,000)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossAttributableToParent', window );">Income before provision for income taxes</a></td>
<td class="nump">1,825,000<span></span>
</td>
<td class="nump">662,000<span></span>
</td>
<td class="nump">4,102,000<span></span>
</td>
<td class="nump">3,526,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">395,000<span></span>
</td>
<td class="nump">159,000<span></span>
</td>
<td class="nump">974,000<span></span>
</td>
<td class="nump">808,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 1,430,000<span></span>
</td>
<td class="nump">$ 503,000<span></span>
</td>
<td class="nump">$ 3,128,000<span></span>
</td>
<td class="nump">$ 2,718,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.12<span></span>
</td>
<td class="nump">$ 0.04<span></span>
</td>
<td class="nump">$ 0.26<span></span>
</td>
<td class="nump">$ 0.21<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.12<span></span>
</td>
<td class="nump">$ 0.04<span></span>
</td>
<td class="nump">$ 0.26<span></span>
</td>
<td class="nump">$ 0.21<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding (in shares)</a></td>
<td class="nump">11,781,071<span></span>
</td>
<td class="nump">12,615,187<span></span>
</td>
<td class="nump">11,974,336<span></span>
</td>
<td class="nump">12,834,505<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding (in shares)</a></td>
<td class="nump">11,781,071<span></span>
</td>
<td class="nump">12,688,381<span></span>
</td>
<td class="nump">11,974,336<span></span>
</td>
<td class="nump">12,909,870<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_GainLossOnFixedAssetsNonoperating">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of realized and unrealized gain (loss) on fixed assets, operating activities.</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;">apt_GainLossOnFixedAssetsNonoperating</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of income (loss) attributable to parent. Includes, but is not limited to, income (loss) from continuing operations, discontinued operations and equity method investments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) for proportionate share of equity method investee's income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481664/323-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482659/740-20-45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestIncomeExpenseNonoperatingNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net amount of nonoperating interest income (expense).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNonoperatingNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423111468304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Comprehensive Income (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 1,430,000<span></span>
</td>
<td class="nump">$ 503,000<span></span>
</td>
<td class="nump">$ 3,128,000<span></span>
</td>
<td class="nump">$ 2,718,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment', window );">Other comprehensive income (loss)- foreign currency translation gain (loss)</a></td>
<td class="num">(152,000)<span></span>
</td>
<td class="num">(137,000)<span></span>
</td>
<td class="nump">6,000<span></span>
</td>
<td class="num">(554,000)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income</a></td>
<td class="nump">$ 1,278,000<span></span>
</td>
<td class="nump">$ 366,000<span></span>
</td>
<td class="nump">$ 3,134,000<span></span>
</td>
<td class="nump">$ 2,164,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="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;">apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423106944896">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - USD ($)<br></strong></div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Additional Paid-in Capital [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>AOCI Attributable to Parent [Member]</div></th>
<th class="th" colspan="2"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Dec. 31, 2021</a></td>
<td class="nump">13,115,341<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2021</a></td>
<td class="nump">$ 132,000<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 62,488,000<span></span>
</td>
<td class="num">$ (869,000)<span></span>
</td>
<td class="nump">$ 61,751,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,522,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,522,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock repurchased and retired (in shares)</a></td>
<td class="num">(170,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock repurchased and retired</a></td>
<td class="num">$ (2,000)<span></span>
</td>
<td class="num">(55,000)<span></span>
</td>
<td class="num">(699,000)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(756,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">55,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Total comprehensive income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(153,000)<span></span>
</td>
<td class="num">(153,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Common stock repurchased and retired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(55,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(55,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Mar. 31, 2022</a></td>
<td class="nump">12,945,341<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2022</a></td>
<td class="nump">$ 130,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">63,311,000<span></span>
</td>
<td class="num">(1,022,000)<span></span>
</td>
<td class="nump">62,419,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Dec. 31, 2021</a></td>
<td class="nump">13,115,341<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2021</a></td>
<td class="nump">$ 132,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,488,000<span></span>
</td>
<td class="num">(869,000)<span></span>
</td>
<td class="nump">61,751,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,718,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Sep. 30, 2022</a></td>
<td class="nump">12,477,305<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Sep. 30, 2022</a></td>
<td class="nump">$ 126,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,559,000<span></span>
</td>
<td class="num">(1,424,000)<span></span>
</td>
<td class="nump">61,261,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Mar. 31, 2022</a></td>
<td class="nump">12,945,341<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2022</a></td>
<td class="nump">$ 130,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">63,311,000<span></span>
</td>
<td class="num">(1,022,000)<span></span>
</td>
<td class="nump">62,419,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">693,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">693,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock repurchased and retired (in shares)</a></td>
<td class="num">(225,500)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock repurchased and retired</a></td>
<td class="num">$ (2,000)<span></span>
</td>
<td class="num">(62,000)<span></span>
</td>
<td class="num">(896,000)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(960,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">32,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">32,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares)</a></td>
<td class="nump">8,332<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">30,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Total comprehensive income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(265,000)<span></span>
</td>
<td class="num">(265,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Common stock repurchased and retired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(32,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(32,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Jun. 30, 2022</a></td>
<td class="nump">12,728,173<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2022</a></td>
<td class="nump">$ 128,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">63,108,000<span></span>
</td>
<td class="num">(1,287,000)<span></span>
</td>
<td class="nump">61,949,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">503,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">503,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock repurchased and retired (in shares)</a></td>
<td class="num">(259,200)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock repurchased and retired</a></td>
<td class="num">$ (2,000)<span></span>
</td>
<td class="num">(62,000)<span></span>
</td>
<td class="num">(1,052,000)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,116,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">32,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">32,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares)</a></td>
<td class="nump">8,332<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">30,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Total comprehensive income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(137,000)<span></span>
</td>
<td class="num">(137,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Common stock repurchased and retired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(32,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(32,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Sep. 30, 2022</a></td>
<td class="nump">12,477,305<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Sep. 30, 2022</a></td>
<td class="nump">$ 126,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,559,000<span></span>
</td>
<td class="num">(1,424,000)<span></span>
</td>
<td class="nump">$ 61,261,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Dec. 31, 2022</a></td>
<td class="nump">12,226,306<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,226,306<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2022</a></td>
<td class="nump">$ 123,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,124,000<span></span>
</td>
<td class="num">(1,489,000)<span></span>
</td>
<td class="nump">$ 60,758,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">552,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">552,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock repurchased and retired (in shares)</a></td>
<td class="num">(200,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock repurchased and retired</a></td>
<td class="num">$ (2,000)<span></span>
</td>
<td class="num">(371,000)<span></span>
</td>
<td class="num">(460,000)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(833,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">22,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares)</a></td>
<td class="nump">109,250<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Options exercised</a></td>
<td class="nump">$ 1,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">350,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Total comprehensive income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">137,000<span></span>
</td>
<td class="nump">137,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Common stock repurchased and retired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(22,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(22,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Mar. 31, 2023</a></td>
<td class="nump">12,135,556<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2023</a></td>
<td class="nump">$ 122,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,216,000<span></span>
</td>
<td class="num">(1,352,000)<span></span>
</td>
<td class="nump">$ 60,986,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Dec. 31, 2022</a></td>
<td class="nump">12,226,306<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,226,306<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2022</a></td>
<td class="nump">$ 123,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,124,000<span></span>
</td>
<td class="num">(1,489,000)<span></span>
</td>
<td class="nump">$ 60,758,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,128,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">134,250<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Sep. 30, 2023</a></td>
<td class="nump">11,636,446<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,636,446<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Sep. 30, 2023</a></td>
<td class="nump">$ 117,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,757,000<span></span>
</td>
<td class="num">(1,483,000)<span></span>
</td>
<td class="nump">$ 61,391,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Mar. 31, 2023</a></td>
<td class="nump">12,135,556<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2023</a></td>
<td class="nump">$ 122,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,216,000<span></span>
</td>
<td class="num">(1,352,000)<span></span>
</td>
<td class="nump">60,986,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,146,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,146,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock repurchased and retired (in shares)</a></td>
<td class="num">(275,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock repurchased and retired</a></td>
<td class="num">$ (3,000)<span></span>
</td>
<td class="num">(65,000)<span></span>
</td>
<td class="num">(1,029,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,097,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">(0)<span></span>
</td>
<td class="nump">22,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares)</a></td>
<td class="nump">15,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">54,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">54,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Total comprehensive income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">21,000<span></span>
</td>
<td class="nump">21,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Common stock repurchased and retired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(22,000)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(22,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Treasury Stock Acquired, Purchase Price Significantly in Excess of Current Fair Value, Description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(11,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(11,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Jun. 30, 2023</a></td>
<td class="nump">11,875,556<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Jun. 30, 2023</a></td>
<td class="nump">$ 119,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">62,333,000<span></span>
</td>
<td class="num">(1,331,000)<span></span>
</td>
<td class="nump">61,121,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,430,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,430,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock repurchased and retired (in shares)</a></td>
<td class="num">(249,110)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock repurchased and retired</a></td>
<td class="num">$ (2,000)<span></span>
</td>
<td class="num">(41,000)<span></span>
</td>
<td class="num">(1,006,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,049,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">(0)<span></span>
</td>
<td class="nump">24,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares)</a></td>
<td class="nump">10,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Options exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">36,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Total comprehensive income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(152,000)<span></span>
</td>
<td class="num">(152,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Common stock repurchased and retired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(24,000)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(24,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Treasury Stock Acquired, Purchase Price Significantly in Excess of Current Fair Value, Description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(19,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (19,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Balance (in shares) at Sep. 30, 2023</a></td>
<td class="nump">11,636,446<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,636,446<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Sep. 30, 2023</a></td>
<td class="nump">$ 117,000<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 62,757,000<span></span>
</td>
<td class="num">$ (1,483,000)<span></span>
</td>
<td class="nump">$ 61,391,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr><td colspan="7"></td></tr>
<tr><td colspan="7"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">The condensed consolidated balance sheet as of December 31, 2022, has been prepared using information from the audited consolidated balance sheet as of that date.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-13<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value of stock issued as a result of the exercise of stock options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased and retired during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedAndRetiredDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedAndRetiredDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423111388992">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash Flows From Operating Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 3,128,000<span></span>
</td>
<td class="nump">$ 2,718,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation</a></td>
<td class="nump">68,000<span></span>
</td>
<td class="nump">119,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">687,000<span></span>
</td>
<td class="nump">641,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity in income of unconsolidated affiliate</a></td>
<td class="num">(392,000)<span></span>
</td>
<td class="num">(87,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_OperatingLeaseExpenseNetOfAccretion', window );">Operating lease expense, net of accretion</a></td>
<td class="nump">515,000<span></span>
</td>
<td class="nump">689,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable, net</a></td>
<td class="num">(2,066,000)<span></span>
</td>
<td class="num">(2,680,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDueFromRelatedParties', window );">Accounts receivable, related party</a></td>
<td class="nump">599,000<span></span>
</td>
<td class="nump">161,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="nump">2,871,000<span></span>
</td>
<td class="num">(155,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidExpense', window );">Prepaid expenses</a></td>
<td class="nump">344,000<span></span>
</td>
<td class="nump">2,374,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Accounts payable and accrued liabilities</a></td>
<td class="num">(302,000)<span></span>
</td>
<td class="num">(759,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingLeaseLiability', window );">Lease liabilities</a></td>
<td class="num">(523,000)<span></span>
</td>
<td class="num">(690,000)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">4,929,000<span></span>
</td>
<td class="nump">2,331,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash Flows From Investing Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property and equipment</a></td>
<td class="num">(487,000)<span></span>
</td>
<td class="num">(349,000)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(487,000)<span></span>
</td>
<td class="num">(349,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash Flows From Financing Activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_ProceedsFromPaymentsForStockOptionsExercised', window );">Proceeds from exercise of stock options</a></td>
<td class="nump">440,000<span></span>
</td>
<td class="nump">60,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Repurchase of common stock</a></td>
<td class="num">(2,979,000)<span></span>
</td>
<td class="num">(2,832,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Treasury stock excise tax</a></td>
<td class="num">(30,000)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(2,569,000)<span></span>
</td>
<td class="num">(2,772,000)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">1,873,000<span></span>
</td>
<td class="num">(790,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents, beginning of the period</a></td>
<td class="nump">16,290,000<span></span>
</td>
<td class="nump">16,307,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents, end of the period</a></td>
<td class="nump">$ 18,163,000<span></span>
</td>
<td class="nump">$ 15,517,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_OperatingLeaseExpenseNetOfAccretion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the amount of operating lease expense, net of accretion during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">apt_OperatingLeaseExpenseNetOfAccretion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_ProceedsFromPaymentsForStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from or (outflow of) cash for stock options exercised during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">apt_ProceedsFromPaymentsForStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481877/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) for proportionate share of equity method investee's income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481664/323-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDueFromRelatedParties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in receivables to be collected from other entities that could exert significant influence over the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInDueFromRelatedParties</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in obligation for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -SubTopic 20<br> -Topic 842<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common stock during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113932112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - The Company<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NatureOfOperations', window );">Nature of Operations [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>1.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>The Company</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">Alpha Pro Tech, Ltd. (&#8220;Alpha Pro Tech,&#8221; the &#8220;Company,&#8221; &#8220;we&#8221;, &#8220;us&#8221; or &#8220;our&#8221;) is in the business of protecting people, products and environments. The Company accomplishes this by developing, manufacturing and marketing a line of building supply products for the new home and re-roofing markets and a line of disposable protective apparel for the cleanroom, industrial, pharmaceutical, medical and dental markets.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The Building Supply segment consists of construction weatherization products, such as housewrap, housewrap accessories, namely tape and flashing, and synthetic roof underlayment, as well as other woven material.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The Disposable Protective Apparel segment consists of a complete line of disposable protective garments (shoecovers, bouffant caps, coveralls, gowns, frocks and lab coats), face masks and face shields. All of our disposable protective apparel products, including face masks and face shields, are sold through similar distribution channels, are single-use and disposable, have the purpose of protecting people, products and environments, and have to be produced in Food and Drug Administration (&#8220;FDA&#8221;) approved facilities, regardless of the market served.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The Company&#8217;s products are sold under the "Alpha Pro Tech" brand name as well as under private label and are predominantly sold in the United States of America (&#8220;U.S.&#8221;).</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NatureOfOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//275/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NatureOfOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423108885776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Basis of Presentation and Revenue Recognition Policy<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Significant Accounting Policies [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>2.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Basis of Presentation and Revenue Recognition Policy</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The interim financial information included in this report is unaudited; however, the information reflects all adjustments (consisting of normal recurring adjustments) that are, in the opinion of management, necessary for the fair presentation of the consolidated financial position, results of operations and cash flows for the interim periods reflected herein. These interim condensed consolidated financial statements have been prepared in accordance with the rules and regulations of the Securities and Exchange Commission (&#8220;SEC&#8221;) and, therefore, omit certain information and note disclosures that would be necessary to present the statements in accordance with U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;). The interim condensed consolidated financial statements should be read in conjunction with the Company&#8217;s current year SEC filings, as well as the Company&#8217;s consolidated financial statements for the year ended December 31, 2022, which are included in the Company&#8217;s Annual Report on Form 10-K for the year ended December 31, 2022 (the &#8220;2022 Form 10-K&#8221;), filed with the SEC on March 16, 2023. The results of operations for the three and nine months ended September 30, 2023 in this Quarterly Report on Form 10-Q are not necessarily indicative of the results to be expected for the full year. The condensed consolidated balance sheet as of December 31, 2022 was prepared using information from the audited consolidated balance sheet contained in the 2022 Form 10-K; however, it does not include all disclosures required by U.S. GAAP for annual consolidated financial statements.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">Net sales include revenue from products and shipping and handling charges, net of estimates for product returns and any related sales incentives. Our customer contracts have a single performance obligation: transfer control of products to customers. Revenue is measured as the amount of consideration that we expect to receive in exchange for transferring control of products. All revenue is recognized when we satisfy our performance obligations under the applicable contract. We recognize revenue in connection with transferring control of the promised products to the customer, with revenue being recognized at the point in time when the customer obtains control of the products, which is generally when title passes to the customer upon delivery to a third party carrier for FOB shipping point arrangements and to the customer for FOB destination arrangements, at which time a receivable is created for the invoice sent to the customer. Shipping and handling activities are performed prior to the customer obtaining control of the goods and are accounted for as fulfillment activities and are not a promised good or service. Shipping and handling charges billed to customers are included in revenue. Shipping and handling costs, associated with the distribution of the Company&#8217;s product to the customers, are recorded in cost of goods sold and are recognized when control of the product is transferred to the customer, which is generally when title passes to the customer upon delivery to a third party carrier for FOB shipping point arrangements and to the customer for FOB destination arrangements. We estimate product returns based on historical return rates and estimate rebates based on contractual agreements. Using probability assessments, we estimate sales incentives expected to be paid over the term of the contract. Sales taxes and value added taxes in foreign and domestic jurisdictions that are collected from customers and remitted to governmental authorities are accounted for on a net basis and, therefore, are excluded from net sales. The Company manufactures certain private label goods for customers and has determined that control does not pass to the customer at the time of manufacture, based upon the nature of the private labeling. The Company has determined as of September 30, 2023 that it had no material contract assets and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. See Note 10 and Note 11 of these Notes to Condensed Consolidated Financial Statements (Unaudited) for information on revenue disaggregated by type and by geographic region.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423114509744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Stock-based Compensation<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Share-Based Payment Arrangement [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>3.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Stock-Based Compensation</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company previously granted stock options to employees and non-employee directors under a stock option plan (the &#8220;2004 Option Plan&#8221;). Stock options have been granted with exercise prices at or above the fair market value of the underlying shares of common stock on the date of grant. Options vest and expire according to terms established at the grant date. The 2004 Option Plan provided for a total of 5,000,000 common shares eligible for issuance. Under the 2004 Option Plan, approximately 5,009,750 options (taking into account cancelled and expired options that were added back to the plan reserve) had been granted as of December 31, 2020.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">At the Company&#8217;s 2020 Annual Meeting of Shareholders, the Company&#8217;s shareholders approved the Alpha Pro Tech, Ltd. 2020 Omnibus Incentive Plan (the &#8220;2020 Incentive Plan&#8221;). The 2020 Incentive Plan provides for the grant of incentive and nonqualified stock options, stock appreciation rights, awards of restricted stock and restricted stock units, performance share awards, cash awards and other equity-based awards to employees (including officers), consultants and non-employee directors of the Company and its affiliates. A total of 1,800,000 shares of the Company&#8217;s common stock are reserved for issuance under the 2020 Incentive Plan, plus the number of shares underlying any award granted under the 2004 Option Plan that expires, terminates or is cancelled or forfeited under the terms of the 2004 Option Plan. As a result of the approval of the 2020 Incentive Plan, no future equity awards will be made pursuant to the 2004 Option Plan. Although no new awards may be granted under the 2004 Option Plan, all previously granted awards under the 2004 Option Plan will continue to be governed by the terms of the 2004 Option Plan.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company records compensation expense for the fair value of stock-based awards determined as of the grant date, including employee stock options and restricted stock awards, over the determined requisite service period, which is generally ratably over the vesting term.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">For the nine months ended September 30, 2023 and 2022, 46,400 and 19,600 stock options were granted under the 2020 Incentive Plan, respectively. The Company recognized $10,000 and $39,000 in stock-based compensation expense for the nine months ended September 30, 2023 and 2022, respectively, related to outstanding options previously granted under the 2004 Option Plan. For the nine months ended September 30, 2023 and 2022, 227,600 and 13,600 restricted stock awards were granted under the 2020 Incentive Plan, respectively. The Company recognized $58,000 and $80,000 in compensation expense associated with outstanding restricted stock awards for the nine months ended September 30, 2023 and 2022, respectively. As of September 30, 2023, $966,000 of total unrecognized compensation cost related to outstanding restricted stock awards was expected to be recognized over a weighted-average remainder period of 2.86 years.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company uses the Black-Scholes option-pricing model to value the options. The Company uses historical data to estimate the expected life of the options. The risk-free interest rate for periods within the contractual life of an award is based on the US Treasury yield curve in effect at the time of grant. The estimated volatility is based on historical volatility and management&#8217;s expectations of future volatility. The Company uses an estimated dividend payout of <span style="-sec-ix-hidden:c549">zero</span>, as the Company has not paid dividends in the past and, at this time, does not expect to do so in the future. The Company accounts for option forfeitures as they occur. The following table summarizes stock option activity for the nine months ended September 30, 2023:</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 12pt; margin: 0pt;">&#160;</p>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/>



<table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#160;</b></td>
			<td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><b>&#160;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#160;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Weighted Average</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#160;</b></td>
			<td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><b>&#160;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#160;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Exercise Price</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Options</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Per Option</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="width: 68%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, December 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">410,615</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.50</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Granted to employees and non-employee directors</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,400</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.23</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Exercised</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">134,250</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.27</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Canceled/expired/forfeited</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">13,333</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.61</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, September 30, 2023</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">309,432</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.70</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options exercisable, September 30, 2023</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">253,231</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.59</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">As of September 30, 2023, $161,000 of total unrecognized compensation cost related to stock options was expected to be recognized over a weighted average period of 2.75 years.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//718/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423114068928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Recent Accounting Pronouncements<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Accounting Standards Update and Change in Accounting Principle [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>4.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Recent Accounting Pronouncements</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt; text-align: justify;">In August 2020, the FASB issued ASU 2020-06 Debt --<i>Debt with Conversion and Other Options (Subtopic 470 and Derivatives and Hedging --Contracts in Entity's Own Equity (Subtopic 815: Accounting for Convertible Instruments and Contracts in an Entity's Own Equity</i>, which is intended to simplify the accounting for certain financial instruments with characteristics of liabilities and equity, including convertible instruments and contracts on an entity's own equity. The guidance allows for either full retrospective adoption or modified retrospective adoption. The guidance is effective for the Company January 1, 2024 and early adoption is permitted. The Company is evaluating the impact the adoption of this guidance will have on its condensed consolidated financial statements.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">In June 2016, the FASB issued ASU 2016-13, Financial Instruments --Credit Losses <i>(Topic 326): Measurement of Credit Losses on Financial Instruments</i>, which replaces the existing incurred loss impairment model with an expected credit loss model and requires a financial asset measured at amortized cost to be presented at the net amount expected to be collected. Public business entities classified as smaller reporting companies are required to apply the provision of ASU 2016-13 with annual reporting periods after December 15, 2022. The Company adopted Topic 326 effective January 1, 2023, which did not have a material impact on the Company&#8217;s condensed consolidated financial statements.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">Management periodically reviews new accounting standards that are issued. Management has not identified any other new standards that it believes merit further discussion at this time.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480530/250-10-S99-5<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (i)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480528/815-20-65-6<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479832/842-10-65-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479832/842-10-65-5<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483550/848-10-65-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479343/105-10-65-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482615/740-10-65-8<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482615/740-10-65-8<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482615/740-10-65-8<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482833/825-10-65-6<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482833/825-10-65-6<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482833/825-10-65-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479654/326-10-65-4<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479654/326-10-65-4<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483194/926-20-65-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483194/926-20-65-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483194/926-20-65-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480530/250-10-S99-6<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 250<br> -Publisher FASB<br> -URI https://asc.fasb.org//250/tableOfContent<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -SubTopic 20<br> -Topic 310<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481925/310-20-65-2<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -SubTopic 20<br> -Topic 310<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481925/310-20-65-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423111364672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Inventories<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventory Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>5.</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Inventories</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">As of September 30, 2023 and December 31, 2022, inventories net of reserves consisted of the following:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">11,220,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">13,018,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">2,594,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">2,225,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,712,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,154,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">21,526,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">24,397,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//330/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113987232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Equity Investment in Unconsolidated Affiliate<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentsDisclosureTextBlock', window );">Equity Method Investments and Joint Ventures Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>6. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Equity Investment in Unconsolidated Affiliate</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">In 2005, Alpha ProTech Engineered Products, Inc. (a subsidiary of Alpha Pro Tech, Ltd.) entered into a joint venture with a manufacturer in India, Maple Industries and associates, for the production of building products. Under the terms of the joint venture agreement, a private company, Harmony Plastics Private Limited (&#8220;Harmony&#8221;), was created with ownership interests of 41.66% owned by Alpha ProTech Engineered Products, Inc. and 58.34% owned by Maple Industries and associates.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">This joint venture positions Alpha ProTech Engineered Products, Inc. to respond to current and expected increased product demand for housewrap and synthetic roof underlayment and provides future capacity for sales of specialty roofing component products and custom products for industrial applications requiring high quality extrusion coated fabrics. In addition, the joint venture now supplies products for the Company&#8217;s Disposable Protective Apparel segment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">The capital from the initial funding and a bank loan, which is guaranteed exclusively by the individual shareholders of Maple Industries and associates and collateralized by the assets of Harmony, were utilized to purchase the original manufacturing facility in India. Harmony currently has <span style="-sec-ix-hidden:c610">four</span> facilities in India (<span style="-sec-ix-hidden:c611">three</span> owned and <span style="-sec-ix-hidden:c612">one</span> rented), consisting of: (1) a 139,000 square foot building for manufacturing building products; (2) a 121,000 square foot building for manufacturing coated material and sewing proprietary disposable protective apparel; (3) a 23,000 square foot facility for sewing proprietary disposable protective apparel; and (4) a 159,000 square foot facility (rented) for manufacturing Building Supply segment products. All additions have been financed by Harmony with no guarantees from the Company.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/>


<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">In accordance with ASC 810, Consolidation, the Company assesses whether or not related entities are variable interest entities (&#8220;VIEs&#8221;). For those related entities that qualify as VIEs, ASC 810 requires the Company to determine whether the Company is the primary beneficiary of the VIE, and, if so, to consolidate the VIE. The Company has determined that Harmony is not a VIE and is, therefore, considered to be an unconsolidated affiliate.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">The Company records its investment in Harmony as &#8220;equity investment in unconsolidated affiliate&#8221; in the accompanying consolidated balance sheets. The Company records its equity interest in Harmony&#8217;s results of operations as &#8220;equity in income of unconsolidated affiliate&#8221; in the accompanying consolidated statements of income. The Company periodically reviews its investment in Harmony for impairment. Management has determined that <span style="-sec-ix-hidden:c623"><span style="-sec-ix-hidden:c624">no</span></span> impairment was required as of September 30, 2023, or December 31, 2022. Under the equity method, since the Company&#8217;s reporting currency is different from of Harmony&#8217;s reporting currency, the Company is required to translate our proportionate share of equity for effects of translations in foreign currency and adjust the investment accordingly and accrue the adjustment as a component of Accumulated other comprehensive loss (&#8220;AOCL&#8221;).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">For the three months ended September 30, 2023 and 2022, the Company purchased $5,001,000 and $7,786,000 of inventories, respectively, from Harmony. For the nine months ended September 30, 2023 and 2022, the Company purchased $14,871,000 and $19,645,000 of inventories, respectively, from Harmony. The Company sold $66,000 of inventories to Harmony for each of the three months ended September 30, 2023 and 2022. For the nine months ended September 30, 2023 and 2022, the Company sold $266,000 and $280,000 of inventories, respectively, to Harmony.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">For the three months ended September 30, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $180,000 and loss in income from unconsolidated affiliate of $13,000, respectively, related to Harmony. For the nine months ended September 30, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $392,000 and $87,000, respectively, related to Harmony.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;">As of September 30, 2023, the Company&#8217;s investment in Harmony was $5,116,000, which consisted of its original $1,450,000 investment and cumulative equity in income of unconsolidated affiliate of $6,168,000, less $942,000 in repayments of an advance, $77,000 in payments of dividends, and $1,483,000 in AOCL on foreign currency translations.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for equity method investments and joint ventures. Equity method investments are investments that give the investor the ability to exercise significant influence over the operating and financial policies of an investee. Joint ventures are entities owned and operated by a small group of businesses as a separate and specific business or project for the mutual benefit of the members of the group.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 323<br> -SubTopic 740<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481543/323-740-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 323<br> -Publisher FASB<br> -URI https://asc.fasb.org//323/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423200012976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Accrued Liabilities<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock', window );">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>7. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Accrued Liabilities</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">As of September 30, 2023 and December 31, 2022, accrued liabilities consisted of the following:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Payroll expenses and taxes payable</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">298,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">138,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Commissions and bonuses payable and general accrued liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">587,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">695,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total accrued liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">885,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">833,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a),20,24)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113790928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Basic and Diluted Earnings Per Common Share<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings Per Share [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>8. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Basic and Diluted Earnings Per Common Share</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table provides a reconciliation of both net income and the number of shares used in the computation of &#8220;basic&#8221; earnings per common share (&#8220;EPS&#8221;), which utilizes the weighted average number of common shares outstanding without regard to dilutive shares, and &#8220;diluted&#8221; EPS, which includes all such dilutive shares, for the three and nine months ended September 30, 2023 and 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>For the Three Months Ended</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><b><b>For the Nine Months Ended</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net income (numerator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,430,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">503,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">3,128,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">2,718,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Shares (denominator):</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 34.6%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Basic weighted average common shares outstanding</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11,781,071</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,615,187</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11,974,336</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,834,505</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Add: dilutive effect of common stock options</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">73,194</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">75,365</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Diluted weighted average common shares outstanding</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,781,071</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,688,381</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,974,336</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,909,870</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Earnings per common share:</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Basic</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.12</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.04</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.26</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.21</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Diluted</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.12</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.04</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.26</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.21</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//260/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113790928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Accumulated Other Comprehensive Loss<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNoteTextBlock', window );">Comprehensive Income (Loss) Note [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>9. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Accumulated Other Comprehensive Loss</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 14pt;">Accumulated other comprehensive loss (&#8220;AOCL&#8221;), a component of shareholders' equity, consists of foreign currency translation adjustments related to foreign currency gains or losses on our unconsolidated affiliate as its functional currency is other than the U.S. dollar. The resulting foreign currency translation gains or losses are deferred as AOCL and reclassified to earnings only upon sale or liquidation of that business. The accumulated other comprehensive loss on equity in unconsolidated affiliate was $1,483,000 and $1,489,000 as of September 30, 2023 and December 31, 2022, respectively.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNoteTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//220/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNoteTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113957776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Activity of Business Segments<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment Reporting Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>10. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Activity of Business Segments</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company operates through <span style="-sec-ix-hidden:c755">two</span> business segments:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">(1) Building Supply: consisting of a line of construction supply weatherization products. The construction supply weatherization products consist of housewrap and housewrap accessories including window and door flashing and seam tape, and synthetic roof underlayment, as well as other woven material. The majority of the Company&#8217;s equity in income of unconsolidated affiliate (Harmony) is included in the total segment income for the Building Supply segment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">(2) Disposable Protective Apparel: consisting of a complete line of disposable protective garments, including shoecovers (including the Aqua Trak&#174; and spunbond shoecovers), bouffant caps, coveralls, frocks, lab coats, gowns and hoods, as well as face masks and face shields for the pharmaceutical, cleanroom, industrial, medical and dental markets. A portion of the Company&#8217;s equity in income of unconsolidated affiliate (Harmony) is included in the total segment income for the Disposable Protective Apparel segment.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">Segment data excludes charges allocated to the principal executive office and other unallocated corporate overhead expenses and income tax. The Company evaluates the performance of its segments and allocates resources to them based primarily on net sales.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The accounting policies of the segments are the same as those described previously under Summary of Significant Accounting Policies (see Note 2).</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/>


<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table presents consolidated net sales for each segment for the three and nine months ended September 30, 2023 and 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Three Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 48%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">11,449,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">9,604,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">30,616,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">30,657,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,604,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">5,118,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,351,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">19,099,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">16,053,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">14,722,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">45,967,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">49,756,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table presents the reconciliation of consolidated segment income to consolidated net income for the three and nine months ended September 30, 2023 and 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>For the Three Months Ended</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><b><b>For the Nine Months Ended</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 48%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">1,973,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">1,386,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,456,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,968,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">982,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">489,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,090,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,412,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total segment income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">2,955,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,875,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">7,546,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">7,380,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Unallocated corporate overhead expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,130,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,213,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3,444,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3,854,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Provision for income taxes</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">395,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">159,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">974,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">808,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,430,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">503,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">3,128,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,718,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The following table presents the consolidated net property and equipment, goodwill and definite-lived intangible assets (&#8220;consolidated assets&#8221;) by segment as of September 30, 2023 and December 31, 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b><b><b>December 31,</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">3,316,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">3,395,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,246,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,327,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total segment assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,562,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,722,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Unallocated corporate assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,036,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,076,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total consolidated assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,598,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,798,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/>

<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//280/tableOfContent<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-26<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 34<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-34<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-21<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-21<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423107749072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Financial Information about Geographic Areas<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_FinancialInformationAboutGeographicAreasTextBlock', window );">Financial Information about Geographic Areas [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>11. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Financial Information about Geographic Areas</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">The following table summarizes the Company&#8217;s net sales by geographic region for the three and nine months ended September 30, 2023 and 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Three Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net sales by geographic region</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35.2%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">15,928,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">14,569,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">45,682,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">48,385,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">International</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">125,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">153,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">285,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,371,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Consolidated net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">16,053,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">14,722,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">45,967,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">49,756,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">Net sales by geographic region are based on the countries in which our customers are located. For the three months ended September 30, 2023 and 2022, the Company generated approximately $42,000 and $103,000, respectively, in sales from Canada. For the nine months ended September 30, 2023 and 2022, the Company generated approximately $140,000 and $1,119,000, respectively, in sales from Canada. No country other than the United States was significant to the Company&#8217;s consolidated net sales.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">The following table summarizes the locations of the Company&#8217;s long-lived assets by geographic region as of September 30, 2023 and December 31, 2022:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b><b><b>December 31,</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Long-lived assets by geographic region</p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48.5%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,283,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,380,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">International</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,260,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,362,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated total long-lived assets</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,543,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,742,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_FinancialInformationAboutGeographicAreasTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Entire disclosure for financial information about geographic areas.</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;">apt_FinancialInformationAboutGeographicAreasTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423200012976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Related Party Transactions<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock', window );">Related Party Transactions Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>12. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Related Party Transactions</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 20pt;">As of September 30, 2023, the Company had no related party transactions, other than the Company&#8217;s transactions with its unconsolidated affiliate, Harmony. See Note 6 of these Notes to Condensed Consolidated Financial Statements (Unaudited).</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//850/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-10-50-6<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-10-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483326/850-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423200012976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Leases<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Lessee, Operating Leases [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>13. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Leases</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">The Company has operating leases for the Company&#8217;s corporate office and manufacturing facilities, which expire at various dates through 2026. The Company&#8217;s primary operating lease commitments as of September 30, 2023 related to the Company&#8217;s corporate office in Aurora, Canada and its manufacturing facilities in Valdosta, Georgia; Nogales, Arizona; and Salt Lake City, Utah.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/>


<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">As of September 30, 2023, the Company had operating lease right-of-use assets of $1,210,000 and operating lease liabilities of $1,251,000. As of September 30, 2023, the Company did <span style="-sec-ix-hidden:c935">not</span> have any finance leases recorded on the Company&#8217;s condensed consolidated balance sheet. Operating lease expense was approximately $922,000 during the nine months ended September 30, 2023.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">The aggregate future minimum lease payments and reconciliation to lease liabilities as of September 30, 2023 were as follows:</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>


<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 81%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Remaining three months of 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">281,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">551,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">434,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">47,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total future minimum lease payments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,313,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Less imputed interest</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(62,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total Lease liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,251,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;">As of September 30, 2023, the weighted average remaining lease term of the Company&#8217;s operating leases was 2.2 years. During the nine months ended September 30, 2023, the weighted average discount rate with respect to these leases was 4.55%.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//842-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423108870192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Income Taxes<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Tax Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>14. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Income taxes</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company accounts for income taxes using the asset and liability method. A valuation allowance is recorded to reduce the carrying amounts of deferred income tax assets unless it is more likely than not that such assets will be realized. The Company&#8217;s policy is to record any interest and penalties assessed by the Internal Revenue Service as a component of the provision for income taxes. The Company provides allowances for uncertain income tax positions when it is more likely than not that the position will not be sustained upon examination by the tax authority.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">Alpha Pro Tech, Ltd. and its subsidiaries file income tax returns in the U.S. federal jurisdiction, and in various state and foreign jurisdictions.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">An employer generally does not claim a corporate income tax deduction (which would be in an amount equal to the amount of income recognized by the employee) upon the exercise of its employee's incentive stock options (&#8220;ISOs&#8221;) unless the employee does not meet the holding period requirements and sells early, making a disqualifying disposition, or if the options otherwise do not qualify as ISOs under applicable tax laws. With non-qualified stock options (&#8220;NQSOs&#8221;), on the other hand, the employer is typically eligible to claim a deduction upon its employee's exercise of the NQSOs.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//740/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-21<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482526/740-270-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423275333392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - Contingencies<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>15. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Contingencies</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">On June 7, 2022, the Company filed a lawsuit (the &#8220;Lawsuit&#8221;) in Utah naming as defendants the vendors from which the Company ordered equipment for its facility in Utah (collectively the &#8220;Defendants&#8221;). The Lawsuit relates to certain equipment ordered from Defendants and paid for by the Company, which Defendants never delivered. In the Lawsuit the Company is seeking the following relief: compensatory damages in the amount $490,000, representing the money the Company paid for the machines it never received, lost profits in the form of mask sales it could have made if Defendants had delivered the machines on the promised date, and other monetary and equitable relief. As of September 30, 2023, the Company has written off the $490,000 balance of the deposit paid for the equipment, pending any recovery in the Lawsuit. As of the date hereof, no counterclaims have been asserted against the Company. The Company believes there would not be any meritorious claims against the Company related to the Lawsuit. The Lawsuit has not been resolved and the final outcome, including the potential amount of any recovery for the Company&#8217;s claims, is uncertain. Any potential recovery represents a gain contingency in accordance with ASC 450, Contingencies, that has not been recorded as the matter was not resolved as of September 30, 2023. Any recovery will be recorded when received.</p>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/>


<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company is subject to various pending and threatened litigation actions in the ordinary course of business. Although it is not possible to determine with certainty at this point in time what liability, if any, the Company will have as a result of such litigation, based on consultation with legal counsel, management does not anticipate that the ultimate liability, if any, resulting from such litigation will have a material effect on the Company&#8217;s financial condition and results of operations.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482648/440-10-50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//450/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480327/954-440-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482648/440-10-50-4<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//440/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113996960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Events [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 36pt;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>16. </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: justify; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Subsequent Events</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;">The Company has reviewed and evaluated whether subsequent events have occurred from the condensed consolidated balance sheet date of September 30, 2023 through the filing date of this Quarterly Report on Form 10-Q that would require accounting or disclosure and has concluded that there are no such subsequent events.</p>

<div>&#160;</div>

<div>&#160;</div>



<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//855/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483399/855-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113983712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Stock-based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Share-Based Payment Arrangement, Option, Activity [Table Text Block]</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#160;</b></td>
			<td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><b>&#160;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#160;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Weighted Average</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#160;</b></td>
			<td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><b>&#160;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"><b>&#160;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Exercise Price</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Options</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b>Per Option</b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="width: 68%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, December 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">410,615</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.50</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Granted to employees and non-employee directors</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,400</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.23</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Exercised</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">134,250</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.27</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Canceled/expired/forfeited</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">13,333</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.61</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, September 30, 2023</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">309,432</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.70</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 68%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options exercisable, September 30, 2023</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">253,231</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.59</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423114068928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventory, Current [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">11,220,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">13,018,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">2,594,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">2,225,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,712,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,154,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">21,526,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">24,397,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423111585376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Accrued Liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Schedule of Accrued Liabilities [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Payroll expenses and taxes payable</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">298,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">138,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Commissions and bonuses payable and general accrued liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">587,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">695,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total accrued liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">885,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">833,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423108870192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Basic and Diluted Earnings Per Common Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>For the Three Months Ended</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><b><b>For the Nine Months Ended</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net income (numerator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,430,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">503,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">3,128,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">2,718,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Shares (denominator):</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 34.6%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Basic weighted average common shares outstanding</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11,781,071</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,615,187</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11,974,336</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,834,505</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Add: dilutive effect of common stock options</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">73,194</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">75,365</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Diluted weighted average common shares outstanding</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,781,071</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,688,381</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,974,336</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,909,870</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Earnings per common share:</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Basic</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.12</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.04</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.26</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.21</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Diluted</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.12</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.04</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.26</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.21</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423107744064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Activity of Business Segments (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Segment Reporting Information, by Segment [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Three Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 48%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">11,449,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">9,604,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">30,616,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">30,657,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,604,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">5,118,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,351,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">19,099,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">16,053,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">14,722,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">45,967,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">49,756,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock', window );">Reconciliation of Revenue from Segments to Consolidated [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>For the Three Months Ended</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><b><b>For the Nine Months Ended</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><b><b>September 30,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 48%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">1,973,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">1,386,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,456,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,968,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">982,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">489,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,090,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,412,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total segment income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">2,955,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,875,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">7,546,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">7,380,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Unallocated corporate overhead expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,130,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,213,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3,444,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3,854,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Provision for income taxes</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">395,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">159,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">974,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">808,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated net income</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,430,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">503,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">3,128,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,718,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock', window );">Reconciliation of Assets from Segment to Consolidated [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b><b><b>December 31,</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Building Supply</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">3,316,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">3,395,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Disposable Protective Apparel</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,246,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,327,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total segment assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,562,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,722,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Unallocated corporate assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,036,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,076,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total consolidated assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,598,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,798,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of all significant reconciling items in the reconciliation of total assets from reportable segments to the entity's consolidated assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-25<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113964800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Financial Information about Geographic Areas (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock', window );">Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Three Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>For the Nine Months Ended</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Net sales by geographic region</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 35.2%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">15,928,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">14,569,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">45,682,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">48,385,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">International</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">125,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">153,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">285,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,371,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
			<td>&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Consolidated net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">16,053,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">14,722,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">45,967,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">49,756,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>

<table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 18pt;">

		<tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b><b><b>December 31,</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Long-lived assets by geographic region</p>
			</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 48.5%;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,283,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,380,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">International</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,260,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,362,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td colspan="1" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Consolidated total long-lived assets</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,543,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">5,742,000</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information concerning material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423113716944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr class="finHeading" style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 81%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Remaining three months of 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">281,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">551,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">434,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">47,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total future minimum lease payments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,313,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Less imputed interest</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(62,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total Lease liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,251,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423108962704">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Stock-based Compensation (Details Textual) - USD ($)<br> Pure in Thousands</strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</a></td>
<td class="nump">46,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Share-Based Payment Arrangement, Option [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-Based Payment Arrangement, Expense</a></td>
<td class="nump">$ 10,000<span></span>
</td>
<td class="nump">$ 39,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</a></td>
<td class="nump">$ 161,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)</a></td>
<td class="text">2 years 9 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-Based Payment Arrangement, Expense</a></td>
<td class="nump">$ 58,000<span></span>
</td>
<td class="nump">$ 80,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</a></td>
<td class="nump">$ 966,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)</a></td>
<td class="text">2 years 10 months 9 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringPlanAxis=apt_IncentivePlan2020Member', window );">Incentive Plan 2020 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance', window );">Common Stock, Capital Shares Reserved for Future Issuance</a></td>
<td class="nump">1,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=apt_The2004PlanMember', window );">The2004 Plan Member</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,009,750<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=apt_IncentivePlan2020Member', window );">Incentive Plan 2020 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross</a></td>
<td class="nump">46,400<span></span>
</td>
<td class="nump">19,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=apt_IncentivePlan2020Member', window );">Incentive Plan 2020 [Member] | Restricted Stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period</a></td>
<td class="nump">227,600<span></span>
</td>
<td class="nump">13,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479830/718-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate number of common shares reserved for future issuance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringPlanAxis=apt_IncentivePlan2020Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringPlanAxis=apt_IncentivePlan2020Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=apt_The2004PlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=apt_The2004PlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=apt_IncentivePlan2020Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=apt_IncentivePlan2020Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423110129520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Stocked-based Compensation - Stock Option Activity (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options outstanding, Options (in shares)</a></td>
<td class="nump">410,615<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Options outstanding, Weighted average price (in dollars per share)</a></td>
<td class="nump">$ 3.50<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted, Options (in shares)</a></td>
<td class="nump">46,400<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted, Weighted average price (in dollars per share)</a></td>
<td class="nump">$ 4.23<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised, Options (in shares)</a></td>
<td class="num">(134,250)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised, Weighted average price (in dollars per share)</a></td>
<td class="nump">$ 3.27<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Canceled/expired/forfeited, Options (in shares)</a></td>
<td class="nump">13,333<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Canceled/expired/forfeited, Weighted average price (in dollars per share)</a></td>
<td class="nump">$ 3.61<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options, Options (in shares)</a></td>
<td class="nump">309,432<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Options outstanding, Weighted average price (in dollars per share)</a></td>
<td class="nump">$ 3.70<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Options exercisable, Options (in shares)</a></td>
<td class="nump">253,231<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Options exercisable, Weighted average price (in dollars per share)</a></td>
<td class="nump">$ 3.59<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price of options that were either forfeited or expired.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423114463216">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 5 - Inventories - Inventories (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th" colspan="2"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 11,220,000<span></span>
</td>
<td class="nump">$ 13,018,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work in process</a></td>
<td class="nump">2,594,000<span></span>
</td>
<td class="nump">2,225,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">7,712,000<span></span>
</td>
<td class="nump">9,154,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventory, Net</a></td>
<td class="nump">$ 21,526,000<span></span>
</td>
<td class="nump">$ 24,397,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">The condensed consolidated balance sheet as of December 31, 2022, has been prepared using information from the audited consolidated balance sheet as of that date.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423106874480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Equity Investment in Unconsolidated Affiliate (Details Textual)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($) </div>
<div>ft&#178;</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($) </div>
<div>ft&#178;</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th"><div>Dec. 31, 2005</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_ExpenseToAcquireInventory', window );">Expense To Acquire Inventory</a></td>
<td class="nump">$ 5,001,000<span></span>
</td>
<td class="nump">$ 7,786,000<span></span>
</td>
<td class="nump">$ 14,871,000<span></span>
</td>
<td class="nump">$ 19,645,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfProductiveAssets', window );">Proceeds from Sale of Productive Assets</a></td>
<td class="nump">66,000<span></span>
</td>
<td class="nump">66,000<span></span>
</td>
<td class="nump">266,000<span></span>
</td>
<td class="nump">280,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Income (Loss) from Equity Method Investments</a></td>
<td class="nump">$ 180,000<span></span>
</td>
<td class="num">$ (13,000)<span></span>
</td>
<td class="nump">392,000<span></span>
</td>
<td class="nump">$ 87,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentTypeAxis=apt_HarmonyMember', window );">Harmony [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentDividendsOrDistributions', window );">Proceeds from Equity Method Investment, Distribution</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 77,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_IN', window );">INDIA | Harmony [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfStores', window );">Number of Stores</a></td>
<td class="nump">4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_NumberOfStoresOwned', window );">Number Of Stores Owned</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_NumberOfStoresRented', window );">Number Of Stores Rented</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_IN', window );">INDIA | Harmony [Member] | Manufacturing Building Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">139,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">139,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_IN', window );">INDIA | Harmony [Member] | Manufacturing Coated Material and Sewing Proprietary Disposable Protective Apparel [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">121,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">121,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_IN', window );">INDIA | Harmony [Member] | Sewing Proprietary Disposable Protective Apparel [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">23,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_IN', window );">INDIA | Harmony [Member] | Manufacturing Of Building Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">159,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">159,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=apt_HarmonyMember', window );">Harmony [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment', window );">Equity Method Investment, Other than Temporary Impairment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Equity Method Investments</a></td>
<td class="nump">$ 5,116,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,116,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentAggregateCost', window );">Equity Method Investment, Aggregate Cost</a></td>
<td class="nump">1,450,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,450,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate', window );">Cumulative Equity In Income Of Unconsolidated Affiliate</a></td>
<td class="nump">$ 6,168,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,168,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital', window );">Proceeds from Equity Method Investment, Distribution, Return of Capital</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">942,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentDividendsOrDistributions', window );">Proceeds from Equity Method Investment, Distribution</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,483,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=apt_HarmonyMember', window );">Harmony [Member] | Alpha Pro Tech Engineered Products [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Equity Method Investment, Ownership Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41.66%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=apt_HarmonyMember', window );">Harmony [Member] | Maple Industries and Associates [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Equity Method Investment, Ownership Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">58.34%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>CumulativeEquityInIncomeOfUnconsolidatedAffiliate</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;">apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_ExpenseToAcquireInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Purchases from our Joint venture.</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;">apt_ExpenseToAcquireInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_NumberOfStoresOwned">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the number of stores owned.</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;">apt_NumberOfStoresOwned</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_NumberOfStoresRented">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the number of stores rented.</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;">apt_NumberOfStoresRented</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AreaOfRealEstateProperty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of a real estate property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AreaOfRealEstateProperty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:areaItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentAggregateCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This element represents the aggregate cost of investments accounted for under the equity method of accounting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentAggregateCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentDividendsOrDistributions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of distribution received from equity method investee for return on investment, classified as operating activities. Excludes distribution for return of investment, classified as investing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 21D<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-21D<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentDividendsOrDistributions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This item represents an other than temporary decline in value that has been recognized against an investment accounted for under the equity method of accounting. The excess of the carrying amount over the fair value of the investment represents the amount of the write down which is or was reflected in earnings. The written down value is a new cost basis with the adjusted value of the investment becoming its new carrying value subject to the equity accounting method. Evidence of a loss in value might include, but would not necessarily be limited to, absence of an ability to recover the carrying amount of the investment or inability of the investee to sustain an earnings capacity which would justify the carrying amount of the investment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481664/323-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This item represents the carrying amount on the entity's balance sheet of its investment in common stock of an equity method investee. This is not an indicator of the fair value of the investment, rather it is the initial cost adjusted for the entity's share of earnings and losses of the investee, adjusted for any distributions (dividends) and other than temporary impairment (OTTI) losses recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481664/323-10-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) for proportionate share of equity method investee's income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481664/323-10-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfStores">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the number of stores.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfStores</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of distribution received from equity method investee for return of investment, classified as investing activities. Excludes distribution for return on investment, classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 21D<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-21D<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfProductiveAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the sale of property, plant and equipment (capital expenditures), software, and other intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfProductiveAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=apt_HarmonyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=apt_HarmonyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_IN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_IN</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=apt_HarmonyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=apt_HarmonyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=apt_ManufacturingBuildingProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=apt_ManufacturingBuildingProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=apt_SewingProprietaryDisposableProtectiveApparelMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=apt_SewingProprietaryDisposableProtectiveApparelMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=apt_ManufacturingOfBuildingProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=apt_ManufacturingOfBuildingProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=apt_HarmonyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=apt_HarmonyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis=apt_AlphaProTechEngineeredProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis=apt_AlphaProTechEngineeredProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis=apt_MapleIndustriesAndAssociatesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis=apt_MapleIndustriesAndAssociatesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423108868624">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 7 - Accrued Liabilities - Accrued Liabilities (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th" colspan="2"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedSalariesCurrent', window );">Payroll expenses and taxes payable</a></td>
<td class="nump">$ 298,000<span></span>
</td>
<td class="nump">$ 138,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedBonusesCurrent', window );">Commissions and bonuses payable and general accrued liabilities</a></td>
<td class="nump">587,000<span></span>
</td>
<td class="nump">695,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Total accrued liabilities</a></td>
<td class="nump">$ 885,000<span></span>
</td>
<td class="nump">$ 833,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">The condensed consolidated balance sheet as of December 31, 2022, has been prepared using information from the audited consolidated balance sheet as of that date.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedBonusesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for incentive compensation awarded to employees and directors or earned by them based on the terms of one or more relevant arrangements. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedBonusesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedSalariesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of the obligations incurred through that date and payable for employees' services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedSalariesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423111309984">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Basic and Diluted Earnings Per Common Share - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="6">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 1,430,000<span></span>
</td>
<td class="nump">$ 1,146,000<span></span>
</td>
<td class="nump">$ 552,000<span></span>
</td>
<td class="nump">$ 503,000<span></span>
</td>
<td class="nump">$ 693,000<span></span>
</td>
<td class="nump">$ 1,522,000<span></span>
</td>
<td class="nump">$ 3,128,000<span></span>
</td>
<td class="nump">$ 2,718,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding (in shares)</a></td>
<td class="nump">11,781,071<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,615,187<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,974,336<span></span>
</td>
<td class="nump">12,834,505<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Add: dilutive effect of common stock options (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">73,194<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">75,365<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding (in shares)</a></td>
<td class="nump">11,781,071<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,688,381<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,974,336<span></span>
</td>
<td class="nump">12,909,870<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.12<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.04<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.26<span></span>
</td>
<td class="nump">$ 0.21<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.12<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.04<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.26<span></span>
</td>
<td class="nump">$ 0.21<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480454/718-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-23<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-28A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423114067600">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 9 - Accumulated Other Comprehensive Loss (Details Textual) - USD ($)<br></strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th" colspan="2"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated Other Comprehensive Income (Loss), Net of Tax</a></td>
<td class="num">$ (1,483,000)<span></span>
</td>
<td class="num">$ (1,489,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">The condensed consolidated balance sheet as of December 31, 2022, has been prepared using information from the audited consolidated balance sheet as of that date.</td>
</tr></table></td></tr>
</table>
<div style="display: none;"><table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423114036064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Activity of Business Segments (Details Textual)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of Operating Segments</a></td>
<td class="nump">2<span></span>
</td>
</tr>
</table>
<div style="display: none;"><table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423110598384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Activity of Business Segments - Consolidated Net Sales (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 16,053,000<span></span>
</td>
<td class="nump">$ 14,722,000<span></span>
</td>
<td class="nump">$ 45,967,000<span></span>
</td>
<td class="nump">$ 49,756,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | Building Supply [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">11,449,000<span></span>
</td>
<td class="nump">9,604,000<span></span>
</td>
<td class="nump">30,616,000<span></span>
</td>
<td class="nump">30,657,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | Disposable Protective Apparel [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 4,604,000<span></span>
</td>
<td class="nump">$ 5,118,000<span></span>
</td>
<td class="nump">$ 15,351,000<span></span>
</td>
<td class="nump">$ 19,099,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=apt_BuildingSupplyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=apt_BuildingSupplyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=apt_DisposableProtectiveApparelMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=apt_DisposableProtectiveApparelMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423106590208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="6">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Income</a></td>
<td class="nump">$ 1,430,000<span></span>
</td>
<td class="nump">$ 1,146,000<span></span>
</td>
<td class="nump">$ 552,000<span></span>
</td>
<td class="nump">$ 503,000<span></span>
</td>
<td class="nump">$ 693,000<span></span>
</td>
<td class="nump">$ 1,522,000<span></span>
</td>
<td class="nump">$ 3,128,000<span></span>
</td>
<td class="nump">$ 2,718,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">395,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">159,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">974,000<span></span>
</td>
<td class="nump">808,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Income</a></td>
<td class="nump">2,955,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,875,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,546,000<span></span>
</td>
<td class="nump">7,380,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | Building Supply [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Income</a></td>
<td class="nump">1,973,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,386,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,456,000<span></span>
</td>
<td class="nump">4,968,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | Disposable Protective Apparel [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Income</a></td>
<td class="nump">982,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">489,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,090,000<span></span>
</td>
<td class="nump">2,412,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate, Non-Segment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Income</a></td>
<td class="nump">$ 1,130,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,213,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,444,000<span></span>
</td>
<td class="nump">$ 3,854,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482659/740-20-45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=apt_BuildingSupplyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=apt_BuildingSupplyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=apt_DisposableProtectiveApparelMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=apt_DisposableProtectiveApparelMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423106844752">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Assets</a></td>
<td class="nump">$ 5,598,000<span></span>
</td>
<td class="nump">$ 5,798,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Assets</a></td>
<td class="nump">4,562,000<span></span>
</td>
<td class="nump">4,722,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | Building Supply [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Assets</a></td>
<td class="nump">3,316,000<span></span>
</td>
<td class="nump">3,395,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments [Member] | Disposable Protective Apparel [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Assets</a></td>
<td class="nump">1,246,000<span></span>
</td>
<td class="nump">1,327,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate, Non-Segment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_TotalConsolidatedAssets', window );">Assets</a></td>
<td class="nump">$ 1,036,000<span></span>
</td>
<td class="nump">$ 1,076,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_TotalConsolidatedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total consolidated assets</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">apt_TotalConsolidatedAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=apt_BuildingSupplyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=apt_BuildingSupplyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=apt_DisposableProtectiveApparelMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=apt_DisposableProtectiveApparelMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423107766368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Financial Information about Geographic Areas (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue from Contract with Customer, Including Assessed Tax</a></td>
<td class="nump">$ 16,053,000<span></span>
</td>
<td class="nump">$ 14,722,000<span></span>
</td>
<td class="nump">$ 45,967,000<span></span>
</td>
<td class="nump">$ 49,756,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CA', window );">CANADA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue from Contract with Customer, Including Assessed Tax</a></td>
<td class="nump">$ 42,000<span></span>
</td>
<td class="nump">$ 103,000<span></span>
</td>
<td class="nump">$ 140,000<span></span>
</td>
<td class="nump">$ 1,119,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423107771168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenues</a></td>
<td class="nump">$ 16,053,000<span></span>
</td>
<td class="nump">$ 14,722,000<span></span>
</td>
<td class="nump">$ 45,967,000<span></span>
</td>
<td class="nump">$ 49,756,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=srt_ReportableGeographicalComponentsMember', window );">Reportable Geographical Components [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">5,543,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,543,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,742,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES | Reportable Geographical Components [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenues</a></td>
<td class="nump">15,928,000<span></span>
</td>
<td class="nump">14,569,000<span></span>
</td>
<td class="nump">45,682,000<span></span>
</td>
<td class="nump">48,385,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">4,283,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,283,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,380,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=apt_InternationalMember', window );">International Member | Reportable Geographical Components [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenues</a></td>
<td class="nump">125,000<span></span>
</td>
<td class="nump">$ 153,000<span></span>
</td>
<td class="nump">285,000<span></span>
</td>
<td class="nump">$ 1,371,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncurrentAssets', window );">Long-lived assets</a></td>
<td class="nump">$ 1,260,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,260,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,362,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ConsolidationItemsAxis=srt_ReportableGeographicalComponentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidationItemsAxis=srt_ReportableGeographicalComponentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=apt_InternationalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=apt_InternationalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423111374912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Leases (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
<th class="th" colspan="2"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><sup>[1]</sup></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating Lease, Right-of-Use Asset</a></td>
<td class="nump">$ 1,210,000<span></span>
</td>
<td colspan="2" class="nump">$ 1,725,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Operating Lease, Liability, Total</a></td>
<td class="nump">1,251,000<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Finance Lease, Liability, Total</a></td>
<td class="nump">0<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Operating Lease, Expense</a></td>
<td class="nump">$ 922,000<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating Lease, Weighted Average Remaining Lease Term (Year)</a></td>
<td class="text">2 years 2 months 12 days<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating Lease, Weighted Average Discount Rate, Percent</a></td>
<td class="nump">4.55%<span></span>
</td>
<td colspan="2" class="text">&#160;<span></span>
</td>
</tr>
<tr><td colspan="4"></td></tr>
<tr><td colspan="4"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">The condensed consolidated balance sheet as of December 31, 2022, has been prepared using information from the audited consolidated balance sheet as of that date.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease expense. Excludes sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423106663808">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 13 - Leases - Future Minimum Lease Payment (Details)<br></strong></div></th>
<th class="th">
<div>Sep. 30, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">Remaining nine months of 2023</a></td>
<td class="nump">$ 281,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2024</a></td>
<td class="nump">551,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2025</a></td>
<td class="nump">434,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2026</a></td>
<td class="nump">47,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total future minimum lease payments</a></td>
<td class="nump">1,313,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="num">(62,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total lease liabilities</a></td>
<td class="nump">$ 1,251,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.23.3</span><table class="report" border="0" cellspacing="2" id="idm140423206413072">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 15 - Contingencies (Details Textual) - Lawsuit With Defendants in Utah for Undelivered Equipment [Member] - USD ($)<br></strong></div></th>
<th class="th"><div>Jun. 07, 2022</div></th>
<th class="th"><div>Sep. 30, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingencyDamagesSoughtValue', window );">Loss Contingency, Damages Sought, Value</a></td>
<td class="nump">$ 490,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_apt_DepositPaidForEquipmentWriteoff', window );">Deposit Paid for Equipment, Write-off</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 490,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_apt_DepositPaidForEquipmentWriteoff">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Write-off amount of deposit paid for equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">apt_DepositPaidForEquipmentWriteoff</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>apt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LossContingencyDamagesSoughtValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 value (monetary amount) of the award the plaintiff seeks in the legal matter.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483076/450-20-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingencyDamagesSoughtValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_LitigationCaseAxis=apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_LitigationCaseAxis=apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>apt20230930_10q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:apt="http://www.alphaprotech.com/20230930"
  xmlns:country="http://xbrl.sec.gov/country/2023"
  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:srt="http://fasb.org/srt/2023"
  xmlns:thunderdome="http://www.RDGFilings.com"
  xmlns:us-gaap="http://fasb.org/us-gaap/2023"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="apt-20230930.xsd" xlink:type="simple"/>
    <context id="d_2023-01-01_2023-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="i_2023-09-30_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">apt:LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="d_2022-06-07_2022-06-07_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">apt:LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-06-07</startDate>
            <endDate>2022-06-07</endDate>
        </period>
    </context>
    <context id="i_2023-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_StatementGeographicalAxis-CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_StatementGeographicalAxis-CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_StatementGeographicalAxis-CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_StatementGeographicalAxis-CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">apt:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="i_2022-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2022-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:DisposableProtectiveApparelMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">apt:BuildingSupplyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_InvestmentTypeAxis-HarmonyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="i_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="d_2022-01-01_2022-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingOfBuildingProductsMember_StatementGeographicalAxis-IN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">apt:ManufacturingOfBuildingProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-SewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">apt:SewingProprietaryDisposableProtectiveApparelMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">apt:ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingBuildingProductsMember_StatementGeographicalAxis-IN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">apt:ManufacturingBuildingProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2023-09-30_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">apt:HarmonyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-MapleIndustriesAndAssociatesMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis">apt:MapleIndustriesAndAssociatesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2005-12-31</instant>
        </period>
    </context>
    <context id="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-AlphaProTechEngineeredProductsMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">apt:HarmonyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis">apt:AlphaProTechEngineeredProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2005-12-31</instant>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="i_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="i_2023-09-30_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_AwardTypeAxis-EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-09-30_PlanNameAxis-IncentivePlan2020Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-09-30_PlanNameAxis-IncentivePlan2020Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="i_2023-09-30_RestructuringPlanAxis-IncentivePlan2020Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">apt:IncentivePlan2020Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="d_2020-01-01_2020-12-31_PlanNameAxis-The2004PlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:The2004PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i_2023-09-30_PlanNameAxis-The2004PlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">apt:The2004PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2022-09-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i_2021-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i_2022-09-30_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i_2022-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="i_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="i_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="i_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="i_2022-06-30_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="d_2022-04-01_2022-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="i_2022-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i_2022-03-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i_2021-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2023-09-30_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-07-01</startDate>
            <endDate>2023-09-30</endDate>
        </period>
    </context>
    <context id="i_2023-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="i_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="i_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="i_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="i_2023-06-30_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="d_2023-04-01_2023-06-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="i_2023-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i_2022-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2022-12-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2022-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-09-30</instant>
        </period>
    </context>
    <context id="i_2023-11-01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2023-11-01</instant>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <unit id="Year">
        <measure>utr:Y</measure>
    </unit>
    <unit id="USDPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Share">
        <measure>shares</measure>
    </unit>
    <unit id="SquareFoot">
        <measure>utr:sqft</measure>
    </unit>
    <unit id="NonApplicable">
        <measure>thunderdome:item</measure>
    </unit>
    <dei:DocumentFiscalPeriodFocus contextRef="d_2023-01-01_2023-09-30">Q3</dei:DocumentFiscalPeriodFocus>
    <dei:DocumentFiscalYearFocus contextRef="d_2023-01-01_2023-09-30">2023</dei:DocumentFiscalYearFocus>
    <dei:CurrentFiscalYearEndDate contextRef="d_2023-01-01_2023-09-30">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:AmendmentFlag contextRef="d_2023-01-01_2023-09-30">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey contextRef="d_2023-01-01_2023-09-30">0000884269</dei:EntityCentralIndexKey>
    <us-gaap:FinanceLeaseLiability
      contextRef="i_2023-09-30"
      decimals="-3"
      id="c935"
      unitRef="USD">0</us-gaap:FinanceLeaseLiability>
    <us-gaap:NumberOfOperatingSegments
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c755"
      unitRef="Pure">2</us-gaap:NumberOfOperatingSegments>
    <us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment
      contextRef="d_2022-01-01_2022-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="-3"
      id="c624"
      unitRef="USD">0</us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment>
    <us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment
      contextRef="d_2023-01-01_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="-3"
      id="c623"
      unitRef="USD">0</us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment>
    <apt:NumberOfStoresRented
      contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c612"
      unitRef="Pure">1</apt:NumberOfStoresRented>
    <apt:NumberOfStoresOwned
      contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c611"
      unitRef="Pure">3</apt:NumberOfStoresOwned>
    <us-gaap:NumberOfStores
      contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c610"
      unitRef="Pure">4</us-gaap:NumberOfStores>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="d_2023-01-01_2023-09-30"
      decimals="-3"
      id="c549"
      unitRef="Pure">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c77"
      unitRef="USDPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i_2023-09-30"
      decimals="INF"
      id="c76"
      unitRef="USDPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <dei:DocumentType contextRef="d_2023-01-01_2023-09-30" id="c2">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="d_2023-01-01_2023-09-30" id="c3">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="d_2023-01-01_2023-09-30" id="c4">2023-09-30</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport contextRef="d_2023-01-01_2023-09-30" id="c5">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="d_2023-01-01_2023-09-30" id="c6">001-15725</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="d_2023-01-01_2023-09-30" id="c7">Alpha Pro Tech, Ltd.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="d_2023-01-01_2023-09-30" id="c8">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="d_2023-01-01_2023-09-30" id="c9">63-1009183</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="d_2023-01-01_2023-09-30" id="c10">53 Wellington Street East</dei:EntityAddressAddressLine1>
    <dei:EntityAddressPostalZipCode contextRef="d_2023-01-01_2023-09-30" id="c11">L4G 1H6</dei:EntityAddressPostalZipCode>
    <dei:EntityAddressCityOrTown contextRef="d_2023-01-01_2023-09-30" id="c12">Aurora</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="d_2023-01-01_2023-09-30" id="c13">ON</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressCountry contextRef="d_2023-01-01_2023-09-30" id="c14">CA</dei:EntityAddressCountry>
    <dei:CityAreaCode contextRef="d_2023-01-01_2023-09-30" id="c15">905</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="d_2023-01-01_2023-09-30" id="c16">479-0654</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="d_2023-01-01_2023-09-30" id="c17">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="d_2023-01-01_2023-09-30" id="c18">APT</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="d_2023-01-01_2023-09-30" id="c19">NYSEAMER</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="d_2023-01-01_2023-09-30" id="c20">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="d_2023-01-01_2023-09-30" id="c21">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="d_2023-01-01_2023-09-30" id="c22">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="d_2023-01-01_2023-09-30" id="c23">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="d_2023-01-01_2023-09-30" id="c24">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="d_2023-01-01_2023-09-30" id="c25">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i_2023-11-01"
      decimals="INF"
      id="c26"
      unitRef="Share">11647096</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2023-09-30"
      decimals="0"
      id="c31"
      unitRef="USD">18163000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2022-12-31"
      decimals="0"
      id="c32"
      unitRef="USD">16290000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember"
      decimals="0"
      id="c33"
      unitRef="USD">35000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember"
      decimals="0"
      id="c34"
      unitRef="USD">45000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember"
      decimals="0"
      id="c35"
      unitRef="USD">7448000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-NonrelatedPartyMember"
      decimals="0"
      id="c36"
      unitRef="USD">5382000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2023-09-30_RelatedPartyTransactionsByRelatedPartyAxis-RelatedPartyMember"
      decimals="0"
      id="c37"
      unitRef="USD">992000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2022-12-31_RelatedPartyTransactionsByRelatedPartyAxis-RelatedPartyMember"
      decimals="0"
      id="c38"
      unitRef="USD">1591000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i_2023-09-30"
      decimals="0"
      id="c39"
      unitRef="USD">21526000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2022-12-31"
      decimals="0"
      id="c40"
      unitRef="USD">24397000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c41"
      unitRef="USD">4558000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c42"
      unitRef="USD">4902000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c43"
      unitRef="USD">52687000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c44"
      unitRef="USD">52562000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2023-09-30"
      decimals="0"
      id="c45"
      unitRef="USD">5543000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2022-12-31"
      decimals="0"
      id="c46"
      unitRef="USD">5742000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="i_2023-09-30"
      decimals="0"
      id="c47"
      unitRef="USD">55000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i_2022-12-31"
      decimals="0"
      id="c48"
      unitRef="USD">55000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2023-09-30"
      decimals="0"
      id="c49"
      unitRef="USD">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i_2022-12-31"
      decimals="0"
      id="c50"
      unitRef="USD">1000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2023-09-30"
      decimals="0"
      id="c51"
      unitRef="USD">1210000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2022-12-31"
      decimals="0"
      id="c52"
      unitRef="USD">1725000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures
      contextRef="i_2023-09-30"
      decimals="0"
      id="c53"
      unitRef="USD">5116000</us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures>
    <us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures
      contextRef="i_2022-12-31"
      decimals="0"
      id="c54"
      unitRef="USD">4718000</us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures>
    <us-gaap:Assets
      contextRef="i_2023-09-30"
      decimals="0"
      id="c55"
      unitRef="USD">64611000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2022-12-31"
      decimals="0"
      id="c56"
      unitRef="USD">64803000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c59"
      unitRef="USD">320000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c60"
      unitRef="USD">674000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c61"
      unitRef="USD">885000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c62"
      unitRef="USD">833000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c63"
      unitRef="USD">777000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c64"
      unitRef="USD">899000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c65"
      unitRef="USD">1982000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c66"
      unitRef="USD">2406000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c67"
      unitRef="USD">474000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c68"
      unitRef="USD">875000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i_2023-09-30"
      decimals="0"
      id="c69"
      unitRef="USD">764000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i_2022-12-31"
      decimals="0"
      id="c70"
      unitRef="USD">764000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:Liabilities
      contextRef="i_2023-09-30"
      decimals="0"
      id="c71"
      unitRef="USD">3220000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i_2022-12-31"
      decimals="0"
      id="c72"
      unitRef="USD">4045000</us-gaap:Liabilities>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2023-09-30"
      decimals="INF"
      id="c78"
      unitRef="Share">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c79"
      unitRef="Share">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2023-09-30"
      decimals="INF"
      id="c80"
      unitRef="Share">11636446</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c81"
      unitRef="Share">12226306</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="i_2023-09-30"
      decimals="0"
      id="c82"
      unitRef="USD">117000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i_2022-12-31"
      decimals="0"
      id="c83"
      unitRef="USD">123000</us-gaap:CommonStockValue>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2023-09-30"
      decimals="0"
      id="c84"
      unitRef="USD">62757000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2022-12-31"
      decimals="0"
      id="c85"
      unitRef="USD">62124000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2023-09-30"
      decimals="0"
      id="c86"
      unitRef="USD">-1483000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2022-12-31"
      decimals="0"
      id="c87"
      unitRef="USD">-1489000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-09-30"
      decimals="0"
      id="c88"
      unitRef="USD">61391000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31"
      decimals="0"
      id="c89"
      unitRef="USD">60758000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2023-09-30"
      decimals="0"
      id="c90"
      unitRef="USD">64611000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2022-12-31"
      decimals="0"
      id="c91"
      unitRef="USD">64803000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c94"
      unitRef="USD">16053000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c95"
      unitRef="USD">14722000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c96"
      unitRef="USD">45967000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c97"
      unitRef="USD">49756000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c98"
      unitRef="USD">10018000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c99"
      unitRef="USD">9904000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c100"
      unitRef="USD">28844000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c101"
      unitRef="USD">32884000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c102"
      unitRef="USD">6035000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c103"
      unitRef="USD">4818000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c104"
      unitRef="USD">17123000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c105"
      unitRef="USD">16872000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c107"
      unitRef="USD">4387000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c108"
      unitRef="USD">3970000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c109"
      unitRef="USD">13275000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c110"
      unitRef="USD">12341000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c111"
      unitRef="USD">225000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c112"
      unitRef="USD">201000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c113"
      unitRef="USD">687000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c114"
      unitRef="USD">641000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingExpenses
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c115"
      unitRef="USD">4612000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c116"
      unitRef="USD">4171000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c117"
      unitRef="USD">13962000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c118"
      unitRef="USD">12982000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c119"
      unitRef="USD">1423000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c120"
      unitRef="USD">647000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c121"
      unitRef="USD">3161000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c122"
      unitRef="USD">3890000</us-gaap:OperatingIncomeLoss>
    <apt:GainLossOnFixedAssetsNonoperating
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c125"
      unitRef="USD">0</apt:GainLossOnFixedAssetsNonoperating>
    <apt:GainLossOnFixedAssetsNonoperating
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c126"
      unitRef="USD">0</apt:GainLossOnFixedAssetsNonoperating>
    <apt:GainLossOnFixedAssetsNonoperating
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c127"
      unitRef="USD">0</apt:GainLossOnFixedAssetsNonoperating>
    <apt:GainLossOnFixedAssetsNonoperating
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c128"
      unitRef="USD">-490000</apt:GainLossOnFixedAssetsNonoperating>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c129"
      unitRef="USD">180000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c130"
      unitRef="USD">-13000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c131"
      unitRef="USD">392000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c132"
      unitRef="USD">87000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c133"
      unitRef="USD">222000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c134"
      unitRef="USD">28000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c135"
      unitRef="USD">549000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c136"
      unitRef="USD">39000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c137"
      unitRef="USD">402000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c138"
      unitRef="USD">15000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c139"
      unitRef="USD">941000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c140"
      unitRef="USD">-364000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossAttributableToParent
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c141"
      unitRef="USD">1825000</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeLossAttributableToParent
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c142"
      unitRef="USD">662000</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeLossAttributableToParent
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c143"
      unitRef="USD">4102000</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeLossAttributableToParent
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c144"
      unitRef="USD">3526000</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c145"
      unitRef="USD">395000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c146"
      unitRef="USD">159000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c147"
      unitRef="USD">974000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c148"
      unitRef="USD">808000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c149"
      unitRef="USD">1430000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c150"
      unitRef="USD">503000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c151"
      unitRef="USD">3128000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c152"
      unitRef="USD">2718000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c153"
      unitRef="USDPerShare">0.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c154"
      unitRef="USDPerShare">0.04</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c155"
      unitRef="USDPerShare">0.26</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c156"
      unitRef="USDPerShare">0.21</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c157"
      unitRef="USDPerShare">0.12</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c158"
      unitRef="USDPerShare">0.04</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c159"
      unitRef="USDPerShare">0.26</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c160"
      unitRef="USDPerShare">0.21</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c161"
      unitRef="Share">11781071</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c162"
      unitRef="Share">12615187</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c163"
      unitRef="Share">11974336</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c164"
      unitRef="Share">12834505</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c165"
      unitRef="Share">11781071</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c166"
      unitRef="Share">12688381</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c167"
      unitRef="Share">11974336</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c168"
      unitRef="Share">12909870</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c171"
      unitRef="USD">1430000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c172"
      unitRef="USD">503000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c173"
      unitRef="USD">3128000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c174"
      unitRef="USD">2718000</us-gaap:NetIncomeLoss>
    <apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c175"
      unitRef="USD">-152000</apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment>
    <apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c176"
      unitRef="USD">-137000</apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment>
    <apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c177"
      unitRef="USD">6000</apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment>
    <apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c178"
      unitRef="USD">-554000</apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c179"
      unitRef="USD">1278000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c180"
      unitRef="USD">366000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c181"
      unitRef="USD">3134000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c182"
      unitRef="USD">2164000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c185"
      unitRef="Share">12226306</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c186"
      unitRef="USD">123000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c187"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c188"
      unitRef="USD">62124000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c189"
      unitRef="USD">-1489000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31"
      decimals="0"
      id="c190"
      unitRef="USD">60758000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c194"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c195"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c196"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c197"
      unitRef="Share">200000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c198"
      unitRef="USD">2000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c199"
      unitRef="USD">371000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c200"
      unitRef="USD">460000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c201"
      unitRef="USD">-0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c202"
      unitRef="USD">833000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c205"
      unitRef="USD">22000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c207"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c208"
      unitRef="USD">22000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c209"
      unitRef="Share">109250</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c210"
      unitRef="USD">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c212"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c213"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c214"
      unitRef="USD">350000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c216"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c217"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c218"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c219"
      unitRef="USD">137000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c220"
      unitRef="USD">137000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c221"
      unitRef="Share">12135556</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c222"
      unitRef="USD">122000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c223"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c224"
      unitRef="USD">62216000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c225"
      unitRef="USD">-1352000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31"
      decimals="0"
      id="c226"
      unitRef="USD">60986000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c230"
      unitRef="USD">1146000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c231"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-04-01_2023-06-30"
      decimals="0"
      id="c232"
      unitRef="USD">1146000</us-gaap:NetIncomeLoss>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c233"
      unitRef="Share">275000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c234"
      unitRef="USD">3000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c235"
      unitRef="USD">65000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c236"
      unitRef="USD">1029000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c237"
      unitRef="USD">-0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-04-01_2023-06-30"
      decimals="0"
      id="c238"
      unitRef="USD">1097000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c241"
      unitRef="USD">11000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2023-04-01_2023-06-30"
      decimals="0"
      id="c244"
      unitRef="USD">11000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c247"
      unitRef="USD">22000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c248"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c249"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-04-01_2023-06-30"
      decimals="0"
      id="c250"
      unitRef="USD">22000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c251"
      unitRef="Share">15000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c253"
      unitRef="USD">54000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c255"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-04-01_2023-06-30"
      decimals="0"
      id="c256"
      unitRef="USD">54000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c258"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c259"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c260"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-04-01_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c261"
      unitRef="USD">21000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-04-01_2023-06-30"
      decimals="0"
      id="c262"
      unitRef="USD">21000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2023-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c263"
      unitRef="Share">11875556</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c264"
      unitRef="USD">119000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c265"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c266"
      unitRef="USD">62333000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c267"
      unitRef="USD">-1331000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-06-30"
      decimals="0"
      id="c268"
      unitRef="USD">61121000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c272"
      unitRef="USD">1430000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c273"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c274"
      unitRef="USD">1430000</us-gaap:NetIncomeLoss>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-1"
      id="c275"
      unitRef="Share">249110</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c276"
      unitRef="USD">2000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c277"
      unitRef="USD">41000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c278"
      unitRef="USD">1006000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c279"
      unitRef="USD">-0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-07-01_2023-09-30"
      decimals="-3"
      id="c280"
      unitRef="USD">1049000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c283"
      unitRef="USD">19000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c286"
      unitRef="USD">19000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c289"
      unitRef="USD">24000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c290"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c291"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c292"
      unitRef="USD">24000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c293"
      unitRef="Share">10000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c295"
      unitRef="USD">36000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c297"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c298"
      unitRef="USD">36000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c300"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c301"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c302"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-07-01_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c303"
      unitRef="USD">-152000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c304"
      unitRef="USD">-152000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2023-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c305"
      unitRef="Share">11636446</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c306"
      unitRef="USD">117000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c307"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c308"
      unitRef="USD">62757000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c309"
      unitRef="USD">-1483000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-09-30"
      decimals="-3"
      id="c310"
      unitRef="USD">61391000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c313"
      unitRef="Share">13115341</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c314"
      unitRef="USD">132000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c315"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c316"
      unitRef="USD">62488000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c317"
      unitRef="USD">-869000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31"
      decimals="0"
      id="c318"
      unitRef="USD">61751000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c322"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c323"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c324"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c325"
      unitRef="Share">170000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c326"
      unitRef="USD">2000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c327"
      unitRef="USD">55000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c328"
      unitRef="USD">699000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c329"
      unitRef="USD">-0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c330"
      unitRef="USD">756000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c333"
      unitRef="USD">55000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c335"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c336"
      unitRef="USD">55000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c338"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c339"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c340"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c341"
      unitRef="USD">-153000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c342"
      unitRef="USD">-153000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c343"
      unitRef="Share">12945341</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c344"
      unitRef="USD">130000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c345"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c346"
      unitRef="USD">63311000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c347"
      unitRef="USD">-1022000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31"
      decimals="0"
      id="c348"
      unitRef="USD">62419000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c352"
      unitRef="USD">693000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c353"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-04-01_2022-06-30"
      decimals="0"
      id="c354"
      unitRef="USD">693000</us-gaap:NetIncomeLoss>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c355"
      unitRef="Share">225500</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c356"
      unitRef="USD">2000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c357"
      unitRef="USD">62000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c358"
      unitRef="USD">896000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c359"
      unitRef="USD">-0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-04-01_2022-06-30"
      decimals="0"
      id="c360"
      unitRef="USD">960000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c363"
      unitRef="USD">32000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c365"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-04-01_2022-06-30"
      decimals="0"
      id="c366"
      unitRef="USD">32000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c367"
      unitRef="Share">8332</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c369"
      unitRef="USD">30000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c371"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2022-04-01_2022-06-30"
      decimals="0"
      id="c372"
      unitRef="USD">30000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c374"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c375"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c376"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-04-01_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c377"
      unitRef="USD">-265000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-04-01_2022-06-30"
      decimals="0"
      id="c378"
      unitRef="USD">-265000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c379"
      unitRef="Share">12728173</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-06-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c380"
      unitRef="USD">128000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-06-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c381"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-06-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c382"
      unitRef="USD">63108000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-06-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c383"
      unitRef="USD">-1287000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-06-30"
      decimals="0"
      id="c384"
      unitRef="USD">61949000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c388"
      unitRef="USD">503000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c389"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c390"
      unitRef="USD">503000</us-gaap:NetIncomeLoss>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-2"
      id="c391"
      unitRef="Share">259200</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c392"
      unitRef="USD">2000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c393"
      unitRef="USD">62000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c394"
      unitRef="USD">1052000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c395"
      unitRef="USD">-0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-07-01_2022-09-30"
      decimals="-3"
      id="c396"
      unitRef="USD">1116000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="-3"
      id="c399"
      unitRef="USD">32000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c401"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-07-01_2022-09-30"
      decimals="-3"
      id="c402"
      unitRef="USD">32000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c403"
      unitRef="Share">8332</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c405"
      unitRef="USD">30000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c407"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c408"
      unitRef="USD">30000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c410"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c411"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c412"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-07-01_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c413"
      unitRef="USD">-137000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c414"
      unitRef="USD">-137000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c415"
      unitRef="Share">12477305</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-09-30_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c416"
      unitRef="USD">126000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-09-30_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c417"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-09-30_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c418"
      unitRef="USD">62559000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-09-30_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="c419"
      unitRef="USD">-1424000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-09-30"
      decimals="-3"
      id="c420"
      unitRef="USD">61261000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c424"
      unitRef="USD">3128000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c425"
      unitRef="USD">2718000</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c428"
      unitRef="USD">68000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c429"
      unitRef="USD">119000</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c430"
      unitRef="USD">687000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c431"
      unitRef="USD">641000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c432"
      unitRef="USD">392000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c433"
      unitRef="USD">87000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <apt:OperatingLeaseExpenseNetOfAccretion
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c434"
      unitRef="USD">515000</apt:OperatingLeaseExpenseNetOfAccretion>
    <apt:OperatingLeaseExpenseNetOfAccretion
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c435"
      unitRef="USD">689000</apt:OperatingLeaseExpenseNetOfAccretion>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c437"
      unitRef="USD">2066000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c438"
      unitRef="USD">2680000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInDueFromRelatedParties
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c439"
      unitRef="USD">-599000</us-gaap:IncreaseDecreaseInDueFromRelatedParties>
    <us-gaap:IncreaseDecreaseInDueFromRelatedParties
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c440"
      unitRef="USD">-161000</us-gaap:IncreaseDecreaseInDueFromRelatedParties>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c441"
      unitRef="USD">-2871000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c442"
      unitRef="USD">155000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c443"
      unitRef="USD">-344000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c444"
      unitRef="USD">-2374000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c445"
      unitRef="USD">-302000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c446"
      unitRef="USD">-759000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c447"
      unitRef="USD">-523000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c448"
      unitRef="USD">-690000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c449"
      unitRef="USD">4929000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c450"
      unitRef="USD">2331000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c452"
      unitRef="USD">487000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c453"
      unitRef="USD">349000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c454"
      unitRef="USD">-487000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c455"
      unitRef="USD">-349000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <apt:ProceedsFromPaymentsForStockOptionsExercised
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c457"
      unitRef="USD">440000</apt:ProceedsFromPaymentsForStockOptionsExercised>
    <apt:ProceedsFromPaymentsForStockOptionsExercised
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c458"
      unitRef="USD">60000</apt:ProceedsFromPaymentsForStockOptionsExercised>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c459"
      unitRef="USD">2979000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c460"
      unitRef="USD">2832000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c461"
      unitRef="USD">30000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c462"
      unitRef="USD">-0</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c464"
      unitRef="USD">-2569000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c465"
      unitRef="USD">-2772000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c466"
      unitRef="USD">1873000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c467"
      unitRef="USD">-790000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2022-12-31"
      decimals="0"
      id="c468"
      unitRef="USD">16290000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2021-12-31"
      decimals="0"
      id="c469"
      unitRef="USD">16307000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2023-09-30"
      decimals="0"
      id="c470"
      unitRef="USD">18163000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2022-09-30"
      decimals="0"
      id="c471"
      unitRef="USD">15517000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:NatureOfOperations contextRef="d_2023-01-01_2023-09-30" id="c472">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;1.&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;The Company&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;Alpha Pro Tech, Ltd. (&#x201c;Alpha Pro Tech,&#x201d; the &#x201c;Company,&#x201d; &#x201c;we&#x201d;, &#x201c;us&#x201d; or &#x201c;our&#x201d;) is in the business of protecting people, products and environments. The Company accomplishes this by developing, manufacturing and marketing a line of building supply products for the new home and re-roofing markets and a line of disposable protective apparel for the cleanroom, industrial, pharmaceutical, medical and dental markets.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;The Building Supply segment consists of construction weatherization products, such as housewrap, housewrap accessories, namely tape and flashing, and synthetic roof underlayment, as well as other woven material.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;The Disposable Protective Apparel segment consists of a complete line of disposable protective garments (shoecovers, bouffant caps, coveralls, gowns, frocks and lab coats), face masks and face shields. All of our disposable protective apparel products, including face masks and face shields, are sold through similar distribution channels, are single-use and disposable, have the purpose of protecting people, products and environments, and have to be produced in Food and Drug Administration (&#x201c;FDA&#x201d;) approved facilities, regardless of the market served.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;The Company&#x2019;s products are sold under the "Alpha Pro Tech" brand name as well as under private label and are predominantly sold in the United States of America (&#x201c;U.S.&#x201d;).&lt;/p&gt;
</us-gaap:NatureOfOperations>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="d_2023-01-01_2023-09-30" id="c474">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;2.&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;Basis of Presentation and Revenue Recognition Policy&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The interim financial information included in this report is unaudited; however, the information reflects all adjustments (consisting of normal recurring adjustments) that are, in the opinion of management, necessary for the fair presentation of the consolidated financial position, results of operations and cash flows for the interim periods reflected herein. These interim condensed consolidated financial statements have been prepared in accordance with the rules and regulations of the Securities and Exchange Commission (&#x201c;SEC&#x201d;) and, therefore, omit certain information and note disclosures that would be necessary to present the statements in accordance with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;). The interim condensed consolidated financial statements should be read in conjunction with the Company&#x2019;s current year SEC filings, as well as the Company&#x2019;s consolidated financial statements for the year ended December 31, 2022, which are included in the Company&#x2019;s Annual Report on Form 10-K for the year ended December 31, 2022 (the &#x201c;2022 Form 10-K&#x201d;), filed with the SEC on March 16, 2023. The results of operations for the three and nine months ended September 30, 2023 in this Quarterly Report on Form 10-Q are not necessarily indicative of the results to be expected for the full year. The condensed consolidated balance sheet as of December 31, 2022 was prepared using information from the audited consolidated balance sheet contained in the 2022 Form 10-K; however, it does not include all disclosures required by U.S. GAAP for annual consolidated financial statements.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;Net sales include revenue from products and shipping and handling charges, net of estimates for product returns and any related sales incentives. Our customer contracts have a single performance obligation: transfer control of products to customers. Revenue is measured as the amount of consideration that we expect to receive in exchange for transferring control of products. All revenue is recognized when we satisfy our performance obligations under the applicable contract. We recognize revenue in connection with transferring control of the promised products to the customer, with revenue being recognized at the point in time when the customer obtains control of the products, which is generally when title passes to the customer upon delivery to a third party carrier for FOB shipping point arrangements and to the customer for FOB destination arrangements, at which time a receivable is created for the invoice sent to the customer. Shipping and handling activities are performed prior to the customer obtaining control of the goods and are accounted for as fulfillment activities and are not a promised good or service. Shipping and handling charges billed to customers are included in revenue. Shipping and handling costs, associated with the distribution of the Company&#x2019;s product to the customers, are recorded in cost of goods sold and are recognized when control of the product is transferred to the customer, which is generally when title passes to the customer upon delivery to a third party carrier for FOB shipping point arrangements and to the customer for FOB destination arrangements. We estimate product returns based on historical return rates and estimate rebates based on contractual agreements. Using probability assessments, we estimate sales incentives expected to be paid over the term of the contract. Sales taxes and value added taxes in foreign and domestic jurisdictions that are collected from customers and remitted to governmental authorities are accounted for on a net basis and, therefore, are excluded from net sales. The Company manufactures certain private label goods for customers and has determined that control does not pass to the customer at the time of manufacture, based upon the nature of the private labeling. The Company has determined as of September 30, 2023 that it had no material contract assets and concluded that its contract liabilities (primarily rebates) had the right of offset against customer receivables. See Note 10 and Note 11 of these Notes to Condensed Consolidated Financial Statements (Unaudited) for information on revenue disaggregated by type and by geographic region.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;

</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="d_2023-01-01_2023-09-30" id="c498">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;3.&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;Stock-Based Compensation&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The Company previously granted stock options to employees and non-employee directors under a stock option plan (the &#x201c;2004 Option Plan&#x201d;). Stock options have been granted with exercise prices at or above the fair market value of the underlying shares of common stock on the date of grant. Options vest and expire according to terms established at the grant date. The 2004 Option Plan provided for a total of 5,000,000 common shares eligible for issuance. Under the 2004 Option Plan, approximately 5,009,750 options (taking into account cancelled and expired options that were added back to the plan reserve) had been granted as of December 31, 2020.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;At the Company&#x2019;s 2020 Annual Meeting of Shareholders, the Company&#x2019;s shareholders approved the Alpha Pro Tech, Ltd. 2020 Omnibus Incentive Plan (the &#x201c;2020 Incentive Plan&#x201d;). The 2020 Incentive Plan provides for the grant of incentive and nonqualified stock options, stock appreciation rights, awards of restricted stock and restricted stock units, performance share awards, cash awards and other equity-based awards to employees (including officers), consultants and non-employee directors of the Company and its affiliates. A total of 1,800,000 shares of the Company&#x2019;s common stock are reserved for issuance under the 2020 Incentive Plan, plus the number of shares underlying any award granted under the 2004 Option Plan that expires, terminates or is cancelled or forfeited under the terms of the 2004 Option Plan. As a result of the approval of the 2020 Incentive Plan, no future equity awards will be made pursuant to the 2004 Option Plan. Although no new awards may be granted under the 2004 Option Plan, all previously granted awards under the 2004 Option Plan will continue to be governed by the terms of the 2004 Option Plan.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The Company records compensation expense for the fair value of stock-based awards determined as of the grant date, including employee stock options and restricted stock awards, over the determined requisite service period, which is generally ratably over the vesting term.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;For the nine months ended September 30, 2023 and 2022, 46,400 and 19,600 stock options were granted under the 2020 Incentive Plan, respectively. The Company recognized $10,000 and $39,000 in stock-based compensation expense for the nine months ended September 30, 2023 and 2022, respectively, related to outstanding options previously granted under the 2004 Option Plan. For the nine months ended September 30, 2023 and 2022, 227,600 and 13,600 restricted stock awards were granted under the 2020 Incentive Plan, respectively. The Company recognized $58,000 and $80,000 in compensation expense associated with outstanding restricted stock awards for the nine months ended September 30, 2023 and 2022, respectively. As of September 30, 2023, $966,000 of total unrecognized compensation cost related to outstanding restricted stock awards was expected to be recognized over a weighted-average remainder period of 2.86 years.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The Company uses the Black-Scholes option-pricing model to value the options. The Company uses historical data to estimate the expected life of the options. The risk-free interest rate for periods within the contractual life of an award is based on the US Treasury yield curve in effect at the time of grant. The estimated volatility is based on historical volatility and management&#x2019;s expectations of future volatility. The Company uses an estimated dividend payout of &lt;span style="-sec-ix-hidden:c549"&gt;zero&lt;/span&gt;, as the Company has not paid dividends in the past and, at this time, does not expect to do so in the future. The Company accounts for option forfeitures as they occur. The following table summarizes stock option activity for the nine months ended September 30, 2023:&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 12pt; margin: 0pt;"&gt;&#160;&lt;/p&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;



&lt;table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 13%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Weighted Average&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 13%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Exercise Price&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Options&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Per Option&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="width: 68%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Options outstanding, December 31, 2022&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;410,615&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.50&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Granted to employees and non-employee directors&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,400&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.23&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Exercised&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;134,250&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.27&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Canceled/expired/forfeited&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;13,333&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.61&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Options outstanding, September 30, 2023&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;309,432&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.70&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Options exercisable, September 30, 2023&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;253,231&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.59&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;As of September 30, 2023, $161,000 of total unrecognized compensation cost related to stock options was expected to be recognized over a weighted average period of 2.75 years.&lt;/p&gt;
</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i_2023-09-30_PlanNameAxis-The2004PlanMember"
      decimals="INF"
      id="c501"
      unitRef="Share">5000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2020-01-01_2020-12-31_PlanNameAxis-The2004PlanMember"
      decimals="INF"
      id="c503"
      unitRef="Share">5009750</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i_2023-09-30_RestructuringPlanAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c509"
      unitRef="Share">1800000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2023-01-01_2023-09-30_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c522"
      unitRef="Share">46400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2022-01-01_2022-09-30_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c523"
      unitRef="Share">19600</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="0"
      id="c525"
      unitRef="USD">10000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2022-01-01_2022-09-30_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="0"
      id="c526"
      unitRef="USD">39000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c536"
      unitRef="Share">227600</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2022-01-01_2022-09-30_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c537"
      unitRef="Share">13600</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember"
      decimals="0"
      id="c539"
      unitRef="USD">58000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2022-01-01_2022-09-30_AwardTypeAxis-RestrictedStockMember"
      decimals="0"
      id="c540"
      unitRef="USD">80000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2023-09-30_AwardTypeAxis-RestrictedStockMember"
      decimals="0"
      id="c547"
      unitRef="USD">966000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-RestrictedStockMember"
      id="c548">P2Y10M9D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="d_2023-01-01_2023-09-30" id="c568">
&lt;table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 13%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Weighted Average&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 13%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Exercise Price&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Options&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 1%;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Per Option&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="width: 68%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Options outstanding, December 31, 2022&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;410,615&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.50&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Granted to employees and non-employee directors&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;46,400&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;4.23&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Exercised&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;134,250&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.27&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Canceled/expired/forfeited&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;13,333&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.61&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Options outstanding, September 30, 2023&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;309,432&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.70&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Options exercisable, September 30, 2023&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;253,231&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;3.59&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c570"
      unitRef="Share">410615</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c571"
      unitRef="USDPerShare">3.50</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c572"
      unitRef="Share">46400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c573"
      unitRef="USDPerShare">4.23</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c574"
      unitRef="Share">134250</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c575"
      unitRef="USDPerShare">3.27</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c576"
      unitRef="Share">13333</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c577"
      unitRef="USDPerShare">3.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2023-09-30"
      decimals="INF"
      id="c578"
      unitRef="Share">309432</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2023-09-30"
      decimals="INF"
      id="c579"
      unitRef="USDPerShare">3.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i_2023-09-30"
      decimals="INF"
      id="c580"
      unitRef="Share">253231</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i_2023-09-30"
      decimals="INF"
      id="c581"
      unitRef="USDPerShare">3.59</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="0"
      id="c566"
      unitRef="USD">161000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="d_2023-01-01_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember"
      id="c567">P2Y9M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="d_2023-01-01_2023-09-30" id="c582">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;4.&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;Recent Accounting Pronouncements&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt; text-align: justify;"&gt;In August 2020, the FASB issued ASU 2020-06 Debt --&lt;i&gt;Debt with Conversion and Other Options (Subtopic 470 and Derivatives and Hedging --Contracts in Entity's Own Equity (Subtopic 815: Accounting for Convertible Instruments and Contracts in an Entity's Own Equity&lt;/i&gt;, which is intended to simplify the accounting for certain financial instruments with characteristics of liabilities and equity, including convertible instruments and contracts on an entity's own equity. The guidance allows for either full retrospective adoption or modified retrospective adoption. The guidance is effective for the Company January 1, 2024 and early adoption is permitted. The Company is evaluating the impact the adoption of this guidance will have on its condensed consolidated financial statements.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;In June 2016, the FASB issued ASU 2016-13, Financial Instruments --Credit Losses &lt;i&gt;(Topic 326): Measurement of Credit Losses on Financial Instruments&lt;/i&gt;, which replaces the existing incurred loss impairment model with an expected credit loss model and requires a financial asset measured at amortized cost to be presented at the net amount expected to be collected. Public business entities classified as smaller reporting companies are required to apply the provision of ASU 2016-13 with annual reporting periods after December 15, 2022. The Company adopted Topic 326 effective January 1, 2023, which did not have a material impact on the Company&#x2019;s condensed consolidated financial statements.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;Management periodically reviews new accounting standards that are issued. Management has not identified any other new standards that it believes merit further discussion at this time.&lt;/p&gt;
</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:InventoryDisclosureTextBlock contextRef="d_2023-01-01_2023-09-30" id="c584">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;5.&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;Inventories&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;As of September 30, 2023 and December 31, 2022, inventories net of reserves consisted of the following:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Raw materials&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;11,220,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;13,018,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Work in process&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;2,594,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;2,225,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Finished goods&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;7,712,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;9,154,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;21,526,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;24,397,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="d_2023-01-01_2023-09-30" id="c594">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Raw materials&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;11,220,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;13,018,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Work in process&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;2,594,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;2,225,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Finished goods&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;7,712,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;9,154,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;21,526,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;24,397,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i_2023-09-30"
      decimals="0"
      id="c596"
      unitRef="USD">11220000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i_2022-12-31"
      decimals="0"
      id="c597"
      unitRef="USD">13018000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2023-09-30"
      decimals="0"
      id="c598"
      unitRef="USD">2594000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2022-12-31"
      decimals="0"
      id="c599"
      unitRef="USD">2225000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2023-09-30"
      decimals="0"
      id="c600"
      unitRef="USD">7712000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2022-12-31"
      decimals="0"
      id="c601"
      unitRef="USD">9154000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="i_2023-09-30"
      decimals="0"
      id="c602"
      unitRef="USD">21526000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2022-12-31"
      decimals="0"
      id="c603"
      unitRef="USD">24397000</us-gaap:InventoryNet>
    <us-gaap:EquityMethodInvestmentsDisclosureTextBlock contextRef="d_2023-01-01_2023-09-30" id="c604">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;6. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Equity Investment in Unconsolidated Affiliate&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;In 2005, Alpha ProTech Engineered Products, Inc. (a subsidiary of Alpha Pro Tech, Ltd.) entered into a joint venture with a manufacturer in India, Maple Industries and associates, for the production of building products. Under the terms of the joint venture agreement, a private company, Harmony Plastics Private Limited (&#x201c;Harmony&#x201d;), was created with ownership interests of 41.66% owned by Alpha ProTech Engineered Products, Inc. and 58.34% owned by Maple Industries and associates.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;This joint venture positions Alpha ProTech Engineered Products, Inc. to respond to current and expected increased product demand for housewrap and synthetic roof underlayment and provides future capacity for sales of specialty roofing component products and custom products for industrial applications requiring high quality extrusion coated fabrics. In addition, the joint venture now supplies products for the Company&#x2019;s Disposable Protective Apparel segment.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;The capital from the initial funding and a bank loan, which is guaranteed exclusively by the individual shareholders of Maple Industries and associates and collateralized by the assets of Harmony, were utilized to purchase the original manufacturing facility in India. Harmony currently has &lt;span style="-sec-ix-hidden:c610"&gt;four&lt;/span&gt; facilities in India (&lt;span style="-sec-ix-hidden:c611"&gt;three&lt;/span&gt; owned and &lt;span style="-sec-ix-hidden:c612"&gt;one&lt;/span&gt; rented), consisting of: (1) a 139,000 square foot building for manufacturing building products; (2) a 121,000 square foot building for manufacturing coated material and sewing proprietary disposable protective apparel; (3) a 23,000 square foot facility for sewing proprietary disposable protective apparel; and (4) a 159,000 square foot facility (rented) for manufacturing Building Supply segment products. All additions have been financed by Harmony with no guarantees from the Company.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;


&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;In accordance with ASC 810, Consolidation, the Company assesses whether or not related entities are variable interest entities (&#x201c;VIEs&#x201d;). For those related entities that qualify as VIEs, ASC 810 requires the Company to determine whether the Company is the primary beneficiary of the VIE, and, if so, to consolidate the VIE. The Company has determined that Harmony is not a VIE and is, therefore, considered to be an unconsolidated affiliate.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;The Company records its investment in Harmony as &#x201c;equity investment in unconsolidated affiliate&#x201d; in the accompanying consolidated balance sheets. The Company records its equity interest in Harmony&#x2019;s results of operations as &#x201c;equity in income of unconsolidated affiliate&#x201d; in the accompanying consolidated statements of income. The Company periodically reviews its investment in Harmony for impairment. Management has determined that &lt;span style="-sec-ix-hidden:c623"&gt;&lt;span style="-sec-ix-hidden:c624"&gt;no&lt;/span&gt;&lt;/span&gt; impairment was required as of September 30, 2023, or December 31, 2022. Under the equity method, since the Company&#x2019;s reporting currency is different from of Harmony&#x2019;s reporting currency, the Company is required to translate our proportionate share of equity for effects of translations in foreign currency and adjust the investment accordingly and accrue the adjustment as a component of Accumulated other comprehensive loss (&#x201c;AOCL&#x201d;).&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;For the three months ended September 30, 2023 and 2022, the Company purchased $5,001,000 and $7,786,000 of inventories, respectively, from Harmony. For the nine months ended September 30, 2023 and 2022, the Company purchased $14,871,000 and $19,645,000 of inventories, respectively, from Harmony. The Company sold $66,000 of inventories to Harmony for each of the three months ended September 30, 2023 and 2022. For the nine months ended September 30, 2023 and 2022, the Company sold $266,000 and $280,000 of inventories, respectively, to Harmony.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;For the three months ended September 30, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $180,000 and loss in income from unconsolidated affiliate of $13,000, respectively, related to Harmony. For the nine months ended September 30, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $392,000 and $87,000, respectively, related to Harmony.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 21pt;"&gt;As of September 30, 2023, the Company&#x2019;s investment in Harmony was $5,116,000, which consisted of its original $1,450,000 investment and cumulative equity in income of unconsolidated affiliate of $6,168,000, less $942,000 in repayments of an advance, $77,000 in payments of dividends, and $1,483,000 in AOCL on foreign currency translations.&lt;/p&gt;
</us-gaap:EquityMethodInvestmentsDisclosureTextBlock>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-AlphaProTechEngineeredProductsMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="4"
      id="c608"
      unitRef="Pure">0.4166</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-MapleIndustriesAndAssociatesMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="4"
      id="c609"
      unitRef="Pure">0.5834</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingBuildingProductsMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c614"
      unitRef="SquareFoot">139000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c616"
      unitRef="SquareFoot">121000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-SewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c618"
      unitRef="SquareFoot">23000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-09-30_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingOfBuildingProductsMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c620"
      unitRef="SquareFoot">159000</us-gaap:AreaOfRealEstateProperty>
    <apt:ExpenseToAcquireInventory
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c633"
      unitRef="USD">5001000</apt:ExpenseToAcquireInventory>
    <apt:ExpenseToAcquireInventory
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c634"
      unitRef="USD">7786000</apt:ExpenseToAcquireInventory>
    <apt:ExpenseToAcquireInventory
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c639"
      unitRef="USD">14871000</apt:ExpenseToAcquireInventory>
    <apt:ExpenseToAcquireInventory
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c640"
      unitRef="USD">19645000</apt:ExpenseToAcquireInventory>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c641"
      unitRef="USD">66000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c642"
      unitRef="USD">66000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c651"
      unitRef="USD">266000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c652"
      unitRef="USD">280000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c657"
      unitRef="USD">180000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c658"
      unitRef="USD">-13000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c663"
      unitRef="USD">392000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c664"
      unitRef="USD">87000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:EquityMethodInvestments
      contextRef="i_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c667"
      unitRef="USD">5116000</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestmentAggregateCost
      contextRef="i_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c668"
      unitRef="USD">1450000</us-gaap:EquityMethodInvestmentAggregateCost>
    <apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate
      contextRef="i_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c669"
      unitRef="USD">6168000</apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate>
    <us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital
      contextRef="d_2023-01-01_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c670"
      unitRef="USD">942000</us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital>
    <us-gaap:EquityMethodInvestmentDividendsOrDistributions
      contextRef="d_2023-01-01_2023-09-30_InvestmentTypeAxis-HarmonyMember"
      decimals="0"
      id="c671"
      unitRef="USD">77000</us-gaap:EquityMethodInvestmentDividendsOrDistributions>
    <us-gaap:EquityMethodInvestmentDividendsOrDistributions
      contextRef="d_2023-01-01_2023-09-30_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c672"
      unitRef="USD">1483000</us-gaap:EquityMethodInvestmentDividendsOrDistributions>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock contextRef="d_2023-01-01_2023-09-30" id="c673">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;7. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Accrued Liabilities&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;As of September 30, 2023 and December 31, 2022, accrued liabilities consisted of the following:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Payroll expenses and taxes payable&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;298,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;138,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Commissions and bonuses payable and general accrued liabilities&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;587,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;695,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total accrued liabilities&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;885,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;833,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;

</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock contextRef="d_2023-01-01_2023-09-30" id="c681">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Payroll expenses and taxes payable&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;298,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;138,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Commissions and bonuses payable and general accrued liabilities&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;587,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;695,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total accrued liabilities&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;885,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;833,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:AccruedSalariesCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c683"
      unitRef="USD">298000</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedSalariesCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c684"
      unitRef="USD">138000</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c685"
      unitRef="USD">587000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c686"
      unitRef="USD">695000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2023-09-30"
      decimals="0"
      id="c687"
      unitRef="USD">885000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c688"
      unitRef="USD">833000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:EarningsPerShareTextBlock contextRef="d_2023-01-01_2023-09-30" id="c689">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;8. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Basic and Diluted Earnings Per Common Share&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The following table provides a reconciliation of both net income and the number of shares used in the computation of &#x201c;basic&#x201d; earnings per common share (&#x201c;EPS&#x201d;), which utilizes the weighted average number of common shares outstanding without regard to dilutive shares, and &#x201c;diluted&#x201d; EPS, which includes all such dilutive shares, for the three and nine months ended September 30, 2023 and 2022:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;For the Three Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Nine Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Net income (numerator)&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;1,430,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;503,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;3,128,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;2,718,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Shares (denominator):&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 34.6%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Basic weighted average common shares outstanding&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;11,781,071&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,615,187&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;11,974,336&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,834,505&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Add: dilutive effect of common stock options&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;73,194&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;75,365&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Diluted weighted average common shares outstanding&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;11,781,071&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;12,688,381&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;11,974,336&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;12,909,870&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Earnings per common share:&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Basic&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.12&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.04&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.26&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.21&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Diluted&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.12&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.04&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.26&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.21&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="d_2023-01-01_2023-09-30" id="c717">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;For the Three Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Nine Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Net income (numerator)&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;1,430,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;503,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;3,128,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;2,718,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Shares (denominator):&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 34.6%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Basic weighted average common shares outstanding&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;11,781,071&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,615,187&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;11,974,336&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,834,505&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Add: dilutive effect of common stock options&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;73,194&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;-&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;75,365&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Diluted weighted average common shares outstanding&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;11,781,071&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;12,688,381&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;11,974,336&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;12,909,870&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Earnings per common share:&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Basic&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.12&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.04&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.26&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.21&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Diluted&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.12&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.04&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.26&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.21&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c719"
      unitRef="USD">1430000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c720"
      unitRef="USD">503000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c721"
      unitRef="USD">3128000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c722"
      unitRef="USD">2718000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c724"
      unitRef="Share">11781071</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c725"
      unitRef="Share">12615187</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c726"
      unitRef="Share">11974336</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c727"
      unitRef="Share">12834505</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c728"
      unitRef="Share">0</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c729"
      unitRef="Share">73194</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c730"
      unitRef="Share">0</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c731"
      unitRef="Share">75365</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c732"
      unitRef="Share">11781071</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c733"
      unitRef="Share">12688381</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c734"
      unitRef="Share">11974336</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c735"
      unitRef="Share">12909870</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c737"
      unitRef="USDPerShare">0.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c738"
      unitRef="USDPerShare">0.04</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c739"
      unitRef="USDPerShare">0.26</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c740"
      unitRef="USDPerShare">0.21</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2023-07-01_2023-09-30"
      decimals="INF"
      id="c741"
      unitRef="USDPerShare">0.12</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2022-07-01_2022-09-30"
      decimals="INF"
      id="c742"
      unitRef="USDPerShare">0.04</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2023-01-01_2023-09-30"
      decimals="INF"
      id="c743"
      unitRef="USDPerShare">0.26</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2022-01-01_2022-09-30"
      decimals="INF"
      id="c744"
      unitRef="USDPerShare">0.21</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ComprehensiveIncomeNoteTextBlock contextRef="d_2023-01-01_2023-09-30" id="c745">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;9. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Accumulated Other Comprehensive Loss&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 14pt;"&gt;Accumulated other comprehensive loss (&#x201c;AOCL&#x201d;), a component of shareholders' equity, consists of foreign currency translation adjustments related to foreign currency gains or losses on our unconsolidated affiliate as its functional currency is other than the U.S. dollar. The resulting foreign currency translation gains or losses are deferred as AOCL and reclassified to earnings only upon sale or liquidation of that business. The accumulated other comprehensive loss on equity in unconsolidated affiliate was $1,483,000 and $1,489,000 as of September 30, 2023 and December 31, 2022, respectively.&lt;/p&gt;
</us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2023-09-30"
      decimals="0"
      id="c747"
      unitRef="USD">-1483000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2022-12-31"
      decimals="0"
      id="c748"
      unitRef="USD">-1489000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="d_2023-01-01_2023-09-30" id="c753">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;10. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Activity of Business Segments&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The Company operates through &lt;span style="-sec-ix-hidden:c755"&gt;two&lt;/span&gt; business segments:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;(1) Building Supply: consisting of a line of construction supply weatherization products. The construction supply weatherization products consist of housewrap and housewrap accessories including window and door flashing and seam tape, and synthetic roof underlayment, as well as other woven material. The majority of the Company&#x2019;s equity in income of unconsolidated affiliate (Harmony) is included in the total segment income for the Building Supply segment.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;(2) Disposable Protective Apparel: consisting of a complete line of disposable protective garments, including shoecovers (including the Aqua Trak&#xae; and spunbond shoecovers), bouffant caps, coveralls, frocks, lab coats, gowns and hoods, as well as face masks and face shields for the pharmaceutical, cleanroom, industrial, medical and dental markets. A portion of the Company&#x2019;s equity in income of unconsolidated affiliate (Harmony) is included in the total segment income for the Disposable Protective Apparel segment.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;Segment data excludes charges allocated to the principal executive office and other unallocated corporate overhead expenses and income tax. The Company evaluates the performance of its segments and allocates resources to them based primarily on net sales.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The accounting policies of the segments are the same as those described previously under Summary of Significant Accounting Policies (see Note 2).&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;


&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The following table presents consolidated net sales for each segment for the three and nine months ended September 30, 2023 and 2022:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Three Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Nine Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 48%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Building Supply&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;11,449,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;9,604,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;30,616,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;30,657,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;4,604,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;5,118,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;15,351,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;19,099,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Consolidated net sales&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;16,053,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;14,722,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;45,967,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;49,756,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The following table presents the reconciliation of consolidated segment income to consolidated net income for the three and nine months ended September 30, 2023 and 2022:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;For the Three Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Nine Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 48%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Building Supply&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,973,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,386,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,456,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,968,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;982,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;489,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,090,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,412,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total segment income&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;2,955,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,875,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;7,546,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;7,380,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Unallocated corporate overhead expenses&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,130,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,213,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3,444,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3,854,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Provision for income taxes&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;395,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;159,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;974,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;808,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Consolidated net income&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1,430,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;503,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;3,128,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2,718,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The following table presents the consolidated net property and equipment, goodwill and definite-lived intangible assets (&#x201c;consolidated assets&#x201d;) by segment as of September 30, 2023 and December 31, 2022:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Building Supply&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,316,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,395,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,246,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,327,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total segment assets&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;4,562,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;4,722,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Unallocated corporate assets&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,036,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,076,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total consolidated assets&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,598,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,798,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;

</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock contextRef="d_2023-01-01_2023-09-30" id="c802">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Three Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Nine Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 48%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Building Supply&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;11,449,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;9,604,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;30,616,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;30,657,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;4,604,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;5,118,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;15,351,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;19,099,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Consolidated net sales&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;16,053,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;14,722,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;45,967,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;49,756,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c804"
      unitRef="USD">11449000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c805"
      unitRef="USD">9604000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c806"
      unitRef="USD">30616000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c807"
      unitRef="USD">30657000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c808"
      unitRef="USD">4604000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c809"
      unitRef="USD">5118000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c810"
      unitRef="USD">15351000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c811"
      unitRef="USD">19099000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c812"
      unitRef="USD">16053000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c813"
      unitRef="USD">14722000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c814"
      unitRef="USD">45967000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c815"
      unitRef="USD">49756000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock contextRef="d_2023-01-01_2023-09-30" id="c816">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;For the Three Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Nine Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 48%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Building Supply&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,973,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;1,386,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,456,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,968,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;982,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;489,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,090,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,412,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total segment income&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;2,955,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,875,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;7,546,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;7,380,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Unallocated corporate overhead expenses&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,130,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,213,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3,444,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3,854,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Provision for income taxes&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;395,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;159,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;974,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;808,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Consolidated net income&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1,430,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;503,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;3,128,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;2,718,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c818"
      unitRef="USD">1973000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c819"
      unitRef="USD">1386000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c820"
      unitRef="USD">4456000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c821"
      unitRef="USD">4968000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c822"
      unitRef="USD">982000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c823"
      unitRef="USD">489000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c824"
      unitRef="USD">3090000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c825"
      unitRef="USD">2412000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c826"
      unitRef="USD">2955000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c827"
      unitRef="USD">1875000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c828"
      unitRef="USD">7546000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c829"
      unitRef="USD">7380000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c830"
      unitRef="USD">1130000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c831"
      unitRef="USD">1213000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c832"
      unitRef="USD">3444000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c833"
      unitRef="USD">3854000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c834"
      unitRef="USD">395000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c835"
      unitRef="USD">159000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c836"
      unitRef="USD">974000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c837"
      unitRef="USD">808000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c838"
      unitRef="USD">1430000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c839"
      unitRef="USD">503000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c840"
      unitRef="USD">3128000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c841"
      unitRef="USD">2718000</us-gaap:NetIncomeLoss>
    <us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock contextRef="d_2023-01-01_2023-09-30" id="c842">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Building Supply&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,316,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,395,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Disposable Protective Apparel&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,246,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,327,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total segment assets&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;4,562,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;4,722,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Unallocated corporate assets&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,036,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,076,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total consolidated assets&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,598,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,798,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c844"
      unitRef="USD">3316000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c845"
      unitRef="USD">3395000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c846"
      unitRef="USD">1246000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c847"
      unitRef="USD">1327000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c848"
      unitRef="USD">4562000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c849"
      unitRef="USD">4722000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-09-30_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c850"
      unitRef="USD">1036000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c851"
      unitRef="USD">1076000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-09-30"
      decimals="0"
      id="c852"
      unitRef="USD">5598000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31"
      decimals="0"
      id="c853"
      unitRef="USD">5798000</apt:TotalConsolidatedAssets>
    <apt:FinancialInformationAboutGeographicAreasTextBlock contextRef="d_2023-01-01_2023-09-30" id="c854">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;11. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Financial Information about Geographic Areas&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;The following table summarizes the Company&#x2019;s net sales by geographic region for the three and nine months ended September 30, 2023 and 2022:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Three Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Nine Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Net sales by geographic region&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 35.2%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;United States&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;15,928,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;14,569,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;45,682,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;48,385,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;International&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;125,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;153,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;285,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,371,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Consolidated net sales&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;16,053,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;14,722,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;45,967,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;49,756,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;Net sales by geographic region are based on the countries in which our customers are located. For the three months ended September 30, 2023 and 2022, the Company generated approximately $42,000 and $103,000, respectively, in sales from Canada. For the nine months ended September 30, 2023 and 2022, the Company generated approximately $140,000 and $1,119,000, respectively, in sales from Canada. No country other than the United States was significant to the Company&#x2019;s consolidated net sales.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"&gt;The following table summarizes the locations of the Company&#x2019;s long-lived assets by geographic region as of September 30, 2023 and December 31, 2022:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Long-lived assets by geographic region&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48.5%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;United States&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,283,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,380,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;International&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,260,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,362,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Consolidated total long-lived assets&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,543,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,742,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</apt:FinancialInformationAboutGeographicAreasTextBlock>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
      contextRef="d_2023-01-01_2023-09-30"
      id="c5835572D-F26D-47E1-90E2-BCB3555337C0">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Three Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;For the Nine Months Ended&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Net sales by geographic region&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 35.2%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;United States&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;15,928,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;14,569,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;45,682,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;48,385,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;International&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;125,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;153,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;285,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 10%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,371,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
			&lt;td&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;Consolidated net sales&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;16,053,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;14,722,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;45,967,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 10%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;49,756,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; text-indent: 0px; margin-left: 18pt;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;December 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Long-lived assets by geographic region&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; width: 48.5%;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;United States&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,283,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,380,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;International&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,260,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;1,362,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;
			&lt;td colspan="1" style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Consolidated total long-lived assets&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,543,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;5,742,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c898"
      unitRef="USD">15928000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c899"
      unitRef="USD">14569000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c900"
      unitRef="USD">45682000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c901"
      unitRef="USD">48385000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-07-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c902"
      unitRef="USD">125000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-07-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c903"
      unitRef="USD">153000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c904"
      unitRef="USD">285000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c905"
      unitRef="USD">1371000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-07-01_2023-09-30"
      decimals="0"
      id="c906"
      unitRef="USD">16053000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-07-01_2022-09-30"
      decimals="0"
      id="c907"
      unitRef="USD">14722000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c908"
      unitRef="USD">45967000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-09-30"
      decimals="0"
      id="c909"
      unitRef="USD">49756000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-07-01_2023-09-30_StatementGeographicalAxis-CA"
      decimals="0"
      id="c877"
      unitRef="USD">42000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-07-01_2022-09-30_StatementGeographicalAxis-CA"
      decimals="0"
      id="c878"
      unitRef="USD">103000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-09-30_StatementGeographicalAxis-CA"
      decimals="0"
      id="c883"
      unitRef="USD">140000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-09-30_StatementGeographicalAxis-CA"
      decimals="0"
      id="c884"
      unitRef="USD">1119000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c913"
      unitRef="USD">4283000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c914"
      unitRef="USD">4380000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c915"
      unitRef="USD">1260000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c916"
      unitRef="USD">1362000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2023-09-30_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"
      decimals="0"
      id="c917"
      unitRef="USD">5543000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"
      decimals="0"
      id="c918"
      unitRef="USD">5742000</us-gaap:NoncurrentAssets>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock contextRef="d_2023-01-01_2023-09-30" id="c919">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;12. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Related Party Transactions&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 20pt;"&gt;As of September 30, 2023, the Company had no related party transactions, other than the Company&#x2019;s transactions with its unconsolidated affiliate, Harmony. See Note 6 of these Notes to Condensed Consolidated Financial Statements (Unaudited).&lt;/p&gt;
</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:LesseeOperatingLeasesTextBlock contextRef="d_2023-01-01_2023-09-30" id="c924">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;13. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Leases&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;"&gt;The Company has operating leases for the Company&#x2019;s corporate office and manufacturing facilities, which expire at various dates through 2026. The Company&#x2019;s primary operating lease commitments as of September 30, 2023 related to the Company&#x2019;s corporate office in Aurora, Canada and its manufacturing facilities in Valdosta, Georgia; Nogales, Arizona; and Salt Lake City, Utah.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;


&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;"&gt;As of September 30, 2023, the Company had operating lease right-of-use assets of $1,210,000 and operating lease liabilities of $1,251,000. As of September 30, 2023, the Company did &lt;span style="-sec-ix-hidden:c935"&gt;not&lt;/span&gt; have any finance leases recorded on the Company&#x2019;s condensed consolidated balance sheet. Operating lease expense was approximately $922,000 during the nine months ended September 30, 2023.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;"&gt;The aggregate future minimum lease payments and reconciliation to lease liabilities as of September 30, 2023 were as follows:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 81%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Remaining three months of 2023&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;281,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2024&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;551,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2025&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;434,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2026&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;47,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total future minimum lease payments&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,313,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Less imputed interest&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(62,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total Lease liabilities&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1,251,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;text-indent:1pt;"&gt;As of September 30, 2023, the weighted average remaining lease term of the Company&#x2019;s operating leases was 2.2 years. During the nine months ended September 30, 2023, the weighted average discount rate with respect to these leases was 4.55%.&lt;/p&gt;
</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2023-09-30"
      decimals="0"
      id="c931"
      unitRef="USD">1210000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2023-09-30"
      decimals="0"
      id="c932"
      unitRef="USD">1251000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseExpense
      contextRef="d_2023-01-01_2023-09-30"
      decimals="0"
      id="c936"
      unitRef="USD">922000</us-gaap:OperatingLeaseExpense>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="d_2023-01-01_2023-09-30" id="c956">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;September 30,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr class="finHeading" style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 81%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Remaining three months of 2023&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;281,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2024&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;551,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2025&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;434,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2026&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;47,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total future minimum lease payments&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,313,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Less imputed interest&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(62,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total Lease liabilities&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;1,251,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="i_2023-09-30"
      decimals="0"
      id="c958"
      unitRef="USD">281000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i_2023-09-30"
      decimals="0"
      id="c959"
      unitRef="USD">551000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i_2023-09-30"
      decimals="0"
      id="c960"
      unitRef="USD">434000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i_2023-09-30"
      decimals="0"
      id="c961"
      unitRef="USD">47000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i_2023-09-30"
      decimals="0"
      id="c962"
      unitRef="USD">1313000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i_2023-09-30"
      decimals="0"
      id="c963"
      unitRef="USD">62000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2023-09-30"
      decimals="0"
      id="c964"
      unitRef="USD">1251000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="i_2023-09-30" id="c951">P2Y2M12D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i_2023-09-30"
      decimals="4"
      id="c955"
      unitRef="Pure">0.0455</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="d_2023-01-01_2023-09-30" id="c965">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;14. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Income taxes&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The Company accounts for income taxes using the asset and liability method. A valuation allowance is recorded to reduce the carrying amounts of deferred income tax assets unless it is more likely than not that such assets will be realized. The Company&#x2019;s policy is to record any interest and penalties assessed by the Internal Revenue Service as a component of the provision for income taxes. The Company provides allowances for uncertain income tax positions when it is more likely than not that the position will not be sustained upon examination by the tax authority.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;Alpha Pro Tech, Ltd. and its subsidiaries file income tax returns in the U.S. federal jurisdiction, and in various state and foreign jurisdictions.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;An employer generally does not claim a corporate income tax deduction (which would be in an amount equal to the amount of income recognized by the employee) upon the exercise of its employee's incentive stock options (&#x201c;ISOs&#x201d;) unless the employee does not meet the holding period requirements and sells early, making a disqualifying disposition, or if the options otherwise do not qualify as ISOs under applicable tax laws. With non-qualified stock options (&#x201c;NQSOs&#x201d;), on the other hand, the employer is typically eligible to claim a deduction upon its employee's exercise of the NQSOs.&lt;/p&gt;
</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="d_2023-01-01_2023-09-30" id="c967">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;15. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Contingencies&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;On June 7, 2022, the Company filed a lawsuit (the &#x201c;Lawsuit&#x201d;) in Utah naming as defendants the vendors from which the Company ordered equipment for its facility in Utah (collectively the &#x201c;Defendants&#x201d;). The Lawsuit relates to certain equipment ordered from Defendants and paid for by the Company, which Defendants never delivered. In the Lawsuit the Company is seeking the following relief: compensatory damages in the amount $490,000, representing the money the Company paid for the machines it never received, lost profits in the form of mask sales it could have made if Defendants had delivered the machines on the promised date, and other monetary and equitable relief. As of September 30, 2023, the Company has written off the $490,000 balance of the deposit paid for the equipment, pending any recovery in the Lawsuit. As of the date hereof, no counterclaims have been asserted against the Company. The Company believes there would not be any meritorious claims against the Company related to the Lawsuit. The Lawsuit has not been resolved and the final outcome, including the potential amount of any recovery for the Company&#x2019;s claims, is uncertain. Any potential recovery represents a gain contingency in accordance with ASC 450, Contingencies, that has not been recorded as the matter was not resolved as of September 30, 2023. Any recovery will be recorded when received.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;


&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The Company is subject to various pending and threatened litigation actions in the ordinary course of business. Although it is not possible to determine with certainty at this point in time what liability, if any, the Company will have as a result of such litigation, based on consultation with legal counsel, management does not anticipate that the ultimate liability, if any, resulting from such litigation will have a material effect on the Company&#x2019;s financial condition and results of operations.&lt;/p&gt;
</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LossContingencyDamagesSoughtValue
      contextRef="d_2022-06-07_2022-06-07_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember"
      decimals="0"
      id="c971"
      unitRef="USD">490000</us-gaap:LossContingencyDamagesSoughtValue>
    <apt:DepositPaidForEquipmentWriteoff
      contextRef="i_2023-09-30_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember"
      decimals="0"
      id="c974"
      unitRef="USD">490000</apt:DepositPaidForEquipmentWriteoff>
    <us-gaap:SubsequentEventsTextBlock contextRef="d_2023-01-01_2023-09-30" id="c979">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 36pt;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;16. &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: justify; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Subsequent Events&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 18pt;"&gt;The Company has reviewed and evaluated whether subsequent events have occurred from the condensed consolidated balance sheet date of September 30, 2023 through the filing date of this Quarterly Report on Form 10-Q that would require accounting or disclosure and has concluded that there are no such subsequent events.&lt;/p&gt;

&lt;div&gt;&#160;&lt;/div&gt;

&lt;div&gt;&#160;&lt;/div&gt;



&lt;hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0"/&gt;</us-gaap:SubsequentEventsTextBlock>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc xlink:href="#c42" xlink:label="c42" xlink:type="locator"/>
        <link:loc xlink:href="#c40" xlink:label="c40" xlink:type="locator"/>
        <link:loc xlink:href="#c48" xlink:label="c48" xlink:type="locator"/>
        <link:loc xlink:href="#c72" xlink:label="c72" xlink:type="locator"/>
        <link:loc xlink:href="#c91" xlink:label="c91" xlink:type="locator"/>
        <link:loc xlink:href="#c36" xlink:label="c36" xlink:type="locator"/>
        <link:loc xlink:href="#c87" xlink:label="c87" xlink:type="locator"/>
        <link:loc xlink:href="#c60" xlink:label="c60" xlink:type="locator"/>
        <link:loc xlink:href="#c44" xlink:label="c44" xlink:type="locator"/>
        <link:loc xlink:href="#c56" xlink:label="c56" xlink:type="locator"/>
        <link:loc xlink:href="#c46" xlink:label="c46" xlink:type="locator"/>
        <link:loc xlink:href="#c66" xlink:label="c66" xlink:type="locator"/>
        <link:loc xlink:href="#c89" xlink:label="c89" xlink:type="locator"/>
        <link:loc xlink:href="#c85" xlink:label="c85" xlink:type="locator"/>
        <link:loc xlink:href="#c54" xlink:label="c54" xlink:type="locator"/>
        <link:loc xlink:href="#c38" xlink:label="c38" xlink:type="locator"/>
        <link:loc xlink:href="#c68" xlink:label="c68" xlink:type="locator"/>
        <link:loc xlink:href="#c70" xlink:label="c70" xlink:type="locator"/>
        <link:loc xlink:href="#c52" xlink:label="c52" xlink:type="locator"/>
        <link:loc xlink:href="#c50" xlink:label="c50" xlink:type="locator"/>
        <link:loc xlink:href="#c32" xlink:label="c32" xlink:type="locator"/>
        <link:loc xlink:href="#c64" xlink:label="c64" xlink:type="locator"/>
        <link:loc xlink:href="#c83" xlink:label="c83" xlink:type="locator"/>
        <link:loc xlink:href="#c62" xlink:label="c62" xlink:type="locator"/>
        <link:footnote id="f851eaa6b-caee-4674-9074-d3fe2a1d033f" xlink:label="f851eaa6b-caee-4674-9074-d3fe2a1d033f" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-us">The condensed consolidated balance sheet as of December 31, 2022, has been prepared using information from the audited consolidated balance sheet as of that date.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c42"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c40"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c48"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c72"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c91"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c36"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c87"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c60"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c44"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c46"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c66"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c89"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c85"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c54"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c38"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c68"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c70"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c52"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c50"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c32"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c64"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c83"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c62"
          xlink:to="f851eaa6b-caee-4674-9074-d3fe2a1d033f"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>58
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    (  %V:%<'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    "  !=FA7[IIC:.\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9++
M:L,P$$5_I6AOCV67/H3C34-6+10::.E.2)-$U'H@3;'S]Y7=Q*&T'U#01C-7
M9\Z 6A6$\A&?HP\8R6"Z&FWODE!AQ0Y$00 D=4 K4YD3+C=W/EI)^1KW$*3Z
MD'N$NJINP"))+4G"!"S"0F1=JY50$27Y>,)KM>##9^QGF%: /5ITE("7'%@W
M30S'L6_A IA@A-&F[P+JA3A7_\3.'6"GY)C,DAJ&H1R:.9=WX/#V]/@RKUL8
MET@ZA?E5,H*. 5?L//FU>5AO-ZRKJ[HI."^JNRV_%]>W^;Q/KC_\+L+6:[,S
M_]CX+-BU\.M?=%]02P,$%     @  79H5YE<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
M"  !=FA7K]J] .8%  #&'P  &    'AL+W=O<FMS:&5E=',O<VAE970Q+GAM
M;+69[V_:.!C'_Q6+DTZ;5$KL "V[%HDRNJ%K.U9Z-^U.]\)-#$1+8LYQ2OO?
MW^,$$M8Y#[EH]$7)K^<;?_S$]M?VQ4:J;\E*"$V>HS!.+ELKK=?O.IW$6XF(
M)Z=R+6*XLY JXAI.U;*3K)7@?A84A1WF./U.Q(.X-;S(KLW4\$*F.@QB,5,D
M2:.(JY<K$<K-98NV=A?N@^5*FPN=X<6:+\5<Z#_6,P5GG4+%#R(1)X&,B1*+
MR]:(OAN[K@G(GO@S$)MD[Y@8E$<IOYF3J7_9<DR)1"@\;20X_#R)L0A#HP3E
M^'<KVBK>:0+WCW?JUQD\P#SR1(QE^"7P]>JR==XBOECP--3W<O-1;(%Z1L^3
M89+])YO\V1YK$2]-M(RVP5""*(CS7_Z\K8B] -:O"&#; /8J@'8K MQM0%9S
MG;QD&=9[KOGP0LD-4>9I4#,'6=UDT4 3Q":-<ZW@;@!Q>OA>>BED19-1[)-)
MK /]0J9Q_GF8:FZ39,652"XZ&MYF8CK>5ODJ5V85R@-R*V.]2D#5%_[W\1TH
M95%4MBOJ%4,%YV)]2ESGA#"'N9;RC/'P._ET2AQJ"_^N.&Y1<VZFYQZJN?WJ
M^OL&GB)3+:+D'UN5Y9)=NZ1ILN^2-??$90O:9"+4DV@-?_V%]IW?;+P_2>P[
M^FY!W\742_J'E[6PD>+AU&E_MB&A40V1>@52KQ[2YY0K+53X0N[%6BIMP\.E
MM$IME3)&HQKB]0N\?CV\F5"!-(W=)]!E6).'*Q4-L;(EHO$-.<\*SK.:7Z;B
M,-IDS;(ZC[C6@H>)-9%H6$/ \P+P'"W4MI>^#D)![M+H42@;&*[A.+1->V>L
M9X-#0QO"#0JX01VX>[$,$@T)U.2.1]9O%-<9A>L5)S,ER8/P5B?D1ONG-E94
MI2$K=<K!UZE#.XT]J> +S<:0$S+7T"R)5&0LTUBK%_CUK55P0/W]Q$:,!S5%
MWO,;M [R W\F4Q^::; (O'SLK/Z6#TCVW39UG $]M_9%>'!37E;RLCJ\(]\'
M]>1D=T RH_ IMN<5E^RYY OXWB!>:J@VN&/L_H0GM@YNC&LUQ2]-$D5=R _X
M,YEH'I*_@G7U5XTKWG0_$/JQ;V4]AB.BI26BN*EYS3HV9]",'^0FMH+B<J-4
M09=@Y3R&3:*E3Z*XNWG-6?17T-T^!;%GSRJN^>G."GH,PT1+QT1QH_-#0O/^
MV(J'*XU'5KQC^"1:&B6*NYOL^QS!Y+^Z*>(" \?J'_"HIEBE/:*XM[F1'O0P
MLY6,,7]T0*1[-F@[_5[7RG<,@T1+AT1Q:_,0:'!^<D$H>_/XELR%ERK(I!42
M5QK+*,I&$.E]LX(>PQVQTATQW+^ @?=AD"/SE^A1AC:^ P*CV8-UG> 8#HB5
M#HCA=F67,#)Y]E8\7HI*BWM Z.[K?#*ZG=Q;&8_A>ECI>E@MUS-.E3)3L7S^
ME>42QHK4NIIT0/&K=0UJC$<UY2SM#:ME;Z:Q%BI?D31S:KX#MW+BBE6<Q[ V
MK+0VK):U,7-.F); <+^4]G'P@,Z=C-O<\P3(@(B?"UIYCV%Q6&EQ6"V+,X]X
M&)*K-(';B?VK;;80A(<UQ2N-#:ME;":14$O3*C^ @EZ!#8C6/+;G%1>L7"C!
MXYJ"EA:'X0YEE\<5S)=0O(;K0'A<4[S2ZK!:2T'[XSC8\6S!GGQ*-4RUXFP$
M?1/$VW7\MU;ZGV1HMG62J_4R-;.-]#2DM-\]<P8P:7NR\9;6A]5:'1I#UZK
MXTUC7SR3WX4]I;B4 W_GYUW6'U@9CN%\W-+YN+AQV8V;UT%BO.Q7P16Z7GM
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
M(<B$:CZG-3^TW-8?F)92:YG7CQO!H=0P!O!^+:5^^F$&Z#YJ7OT/4$L#!!0
M   (  %V:%>M7A]+W0(  (8'   8    >&PO=V]R:W-H965T<R]S:&5E=#,N
M>&ULK551;]HP$/XK5C9-5&(D)"%,'2!1JFF3U@T5M7N8]F"2@UAU[,QVH-VO
MW]FA$924KM+RD/CL^^Z^[^R<1UNI[G0.8,A]P84>>[DQY;GOZS2'@NJ>+$'@
MRDJJ@AHTU=K7I0*:.5#!_3 ($K^@3'B3D9N;J\E(5H8S 7-%=%445#U< )?;
ML=?W'B>NV3HW=L*?C$JZA@68FW*NT/*;*!DK0&@F!5&P&GO3_ODLL?[.X9;!
M5N^-B56RE/+.&E^RL1=80L A-38"Q<\&9L"Y#80T?N]B>DU*"]P?/T;_Y+2C
MEB75,)/\!\M,/O8^>"2#%:VXN9;;S[#3,[#Q4LFU>Y-M[3L<>B2MM)'%#HP,
M"B;J+[W?U6$/T(^? 80[0/BO@&@'B)S0FIF3=4D-G8R4W!)EO3&:';C:.#2J
M8<+NXL(H7&6(,Y.9%!GN"60$1UIREE&#Q@7E5*1 %C:P)IT;0:N,X<H9Z<RI
M F%R,"RE7)^1]^1F<4DZ;\]&OD%&-JZ?[K)?U-G#9[(OH.R1*.B2, BC%OCL
M-/P24H3W'3P\A/M8AZ8885.,T,6+GRU&4>#16AB9WG4)ZB12H>4J<DMY!60.
M.)%C 4B'"9))SJG2I,19;6=;2U#G'+J<]J?:3()>T!_YFWVA+S@=R(D:.=$K
MY#C:FDPKDTO%_J D*\'1UJV\Z^"#/4J#H'Z></\'QP/^<<,_?C7_+OE>&6VH
MR)A8OZ0@/B+6[R=1$L?)$P4MCF$8)E&0M"L8- H&)Q5\DT(!=^<'3Y-Y(#^O
MH%B"^M7&]F0HV\W/=4E3&'O8KC6H#7B3=V_Z2?"Q[<?Y3\$.5">-ZN2DZFF:
MRDI@V[B&%-B&+CETR93CA>%Z"EX]9*8 VPGY*C7NZ*Q2MJ.TU:1.E.QM3#0X
M/H#'7O'@^/3Y>UW2WE!75*V9T(3#"G%!;X@U4W77KPTC2]<XE])@&W;#'"]*
M4-8!UU=2FD?#]N+FZIW\!5!+ P04    "  !=FA7%;J23_@%  #;&@  &
M 'AL+W=O<FMS:&5E=',O<VAE970T+GAM;*U9;6_;-A#^*X0W#"V0Q"+UGB4&
M&DO="JQ;T*S;9\:B;:&2Z(JTG>[7[RC)KSRI[>8OMD0]=]0]/!X?BG=;67]2
M2R$T>2F+2MV/EEJO;L=C-5N*DJL;N1(5/)G+NN0:;NO%6*UJP;/&J"S&S'&"
M<<GS:C2Y:]H>Z\F=7.LBK\1C3=2Z+'G]Y4$4<GL_HJ-=PX=\L=2F83RY6_&%
M>!+ZX^JQAKOQWDN6EZ)2N:Q(+>;WHS?T-F7,&#2(OW*Q54?7Q(3R+.4G<_,N
MNQ\YYHU$(6;:N.#PMQ%3413&$[S'Y\[I:-^G,3R^WGE_VP0/P3QS)::R^#O/
M]/)^%(U()N9\7>@/<ONKZ +RC;^9+%3S2[8M-@A&9+966I:=,;Q!F5?M/W_I
MB#@R #^X >L,V+F!UV/@=@;NM_;@=0;>M_;@=P9-Z.,V]H:XA&L^N:OEEM0&
M#=[,1<-^8PU\Y95)E"==P],<[/1D*JL,AEUD!*Z4+/*,:[AYTO '^: 5D7/R
MKIK)4I!7'RN^SG)X_II<DX]/"7GUX^N[L8;7,,[&LZ[+A[9+UM.E2][+2B\5
M2:'K#+%/ANWC ?LQA+_G@.TX>&"##I_$ZH:XSA5A#G.1]YE^NSG#POE_O:?_
MN?<3,MQ]0KB-/Z_'W^]0G!0OA,(&MC4-&E-3@C83&CB^ZSC.W7ASS!@"]$+&
M+&!B ST_#D(+F"+ ./2#8^!)O-X^7F\PWJE4VN3X0LI,$9@!V141+[,"$KU:
M0,F!\CO+>5O4JHSP4M8Z_Z=IP!AJ._./ W<<&MD,V< X=CR;(!O'HLBS@:D-
M= VRER!_3Y _2- OM52*K&HYSS46L6_U&SBN;P=LX[P((2:Q<32DS,ZQ% $&
M4<AZ P[V 0>-I=L3\!\K4</XPNB+EY6IC>H6BSL88LVL[[=JQ6?B?@09I$2]
M$:/)3S_ =/D9JS"7=)9<TEEZ(6<G(Q'N1R(<3+TGT \P#E=D(2H8DZ*=@1DL
M@[G29HPV AN9T,XT-[)+RM3&N;&!G6>DC:,N"^T43Q$@<SW:FY'1GH=HD(?D
M>ZM09!<-ADQ)!.90.WX;%B!TI@AL(/9X'WL\&/N?4L/ 2VM.8F'']L 'U%YT
MI@@.:HP=N(VC;AS8#E,$R.*HOQ11YR#/G,'P.^DUKV6Y(P%T&BJZ'/LE/*1N
M3A%@X-GCF2 XEP8V32D&C&*G/_HC<4J'2[%>BIKDG?PL8"%ZC=;BSLV%BO%%
MO247]99>RMOI@+##@+#!=/S-: $H0O/\!78)7"FA\61D5DI8:?A52/)U2(I
MKKVAW#OH8#HLA-//ZUQ_@>0[S3^C%=?0<+19XO-Y7D!U1A>CKI>3:1G9B\P4
MP5U3>_8F",Z-D9*$X$Z+]BDM![E,A_7RNTH+R"S=L7)%*H'*0HH(5V0#,,5P
MB"I$8'XSSN=A(S(X[@_[((+IL KNEB&['J&Q(UK7P6)')*R]3"<(+/:P.FSC
MKMV@?P= #XJ8#LJ\W2KT+.:R%F8OL,F;+T5PNV-#\Q=\4>Y<GTX 3(T@P !9
M;!,$!VQ@4\ &NC[KWS+2@RZEP\+T\?L8P(0F1@"B'WT[QQ,$%X?(CA#!14[4
M'_Y!CM)A/6J^$;1!H^%&R.;?Q4J>#?0=K.39.)<B12)%@"RD Q$?1"@=5J$/
M7.4S(GA=@0:%W3!4 0B_A 102PY3XA4L$YDL"EZW#YM6O#:T'87':]H-9>?4
M8"C'.R<&0['@G!4417%*V$&9LF%EFN3%VJQ^ER"EZ^HKI* HBQ0499&"H_I(
M.0A6-JB_NCS9-I^GC3+8@&)?B!-:0#^MM=*PC3/;&<-1VXP30^V20,.(.B$]
M)P=!LH#Z- K/"<)\0@%Q78LDS&?D>K[C]Q!U$))L6$CNLN>"5-E*L(\J!,F"
M*'(C>DX5YA.G"O,9.S%HKC.JQD<?ZTM1+YI3$@5QKRO=?J;=M^Y/8MXTYP]G
M[0_T=DJ1]H3>INTYR\%]>^SSGM>+O%*D$'/HRKD)X77K]B2EO=%RU1P5/$NM
M9=E<+@7/1&T \'PNI=[=F [VYUF3?P%02P,$%     @  79H5_8.OP;* @
M90@  !@   !X;"]W;W)K<VAE971S+W-H965T-2YX;6RE5EMOVC 4_BM6M(=6
M6IL[=%6(5 +3^M -%75[=A-#K"9V9AMH__V.G9!!'5"U\4!\^;YS^7SBDV3'
MQ8LL"5'HM:Z8G#BE4LVMZ\J\)#66U[PA#'967-18P52L7=D(@@M#JBLW\+R1
M6V/*G#0Q:PN1)GRC*LK(0B"YJ6LLWJ:DXKN)XSO[A4>Z+I5><-.DP6NR).JI
M60B8N;V5@M:$2<H9$F0U<>[\VWFL\0;PDY*=/!@CG<DSYR]Z<E],'$\'1"J2
M*VT!PV-+,E)5VA"$\;NSZ?0N-?%PO+?^U>0.N3QC23)>_:*%*B?.C8,*LL*;
M2CWRW3?2Y6,"S'DES3_:=5C/0?E&*EYW9(B@IJQ]XM=.AP,"V!DF!!TA>$^(
M3A#"CA!^U$/4$:*/>H@[@DG=;7,WPLVPPFDB^ X)C09K>F#4-VS0BS)=)TLE
M8)<"3Z499P6<.BD0C"2O:($53)8*'E .2B*^@JT:BK#4U;$EZ)[EO";HXHGA
M34$!?8FNT--RABX^72:N@J"T:3?O IBV 00G @C1 V>JE&@.@10#_-EY_I<S
M?!?$Z!4)]HI,@[,&EZ2Y1J'W&05>$ [$DWV<'@RE\W_>Y__L_4B,L"^/T-B+
M3MC[#C<5-><]=+(M=V2X^D+:IGX4>O!+W.VA8C8N]D(+-K-AH1_<6+BYC0O&
M_A'N*->HSS4ZF^L/51*!\J-:IUVM5US*RRL$]S+</ Q>3"$(R]^0$IC)"IL[
M;PVW<H<<$JMU'A]$?>7'@2W6$"X<VVK9N)$MU8"Q.(Y.2A7W4L5GI<H&1!K*
M.;8+)!C;)YK9N'!D9S,;@/EA9&=MXP)_-)"U>W!OUD2L3<.24 (;IMIWI%_M
M>^*=:07OUJ?^;>8/K,^@A[8M[Z_YM@$_8+&F3***K,"5=SV&F$7;U-J)XHVY
MM9^Y@AY@AB5\!Q"A ;"_XESM)]I!_V61_@%02P,$%     @  79H5TV[;]&;
M#0  [GD  !@   !X;"]W;W)K<VAE971S+W-H965T-BYX;6S%G5%OVS@2Q[^*
MD#O<M4#=F*1$V;TT0&M1W3V@MT&SW7M8[(-B,XE0VW(EN6F__5&*:YKFB)2<
M">ZEC9/AG_0,1?)'CJ2+AZ+\4MU+60??5\MU]?;LOJXW;\[/J_F]7&75ZV(C
MU^HOMT6YRFKUL;P[KS:ES!9MH=7RG(['_'R5Y>NSRXOV=U?EY46QK9?Y6EZ5
M0;5=K;+RQWNY+![>GI&SG[_XE-_=U\TOSB\O-MF=O);UY\U5J3Z=[U46^4JN
MJ[Q8!Z6\?7OVCKSY,*%-@=;BCUP^5 <_!\U7N2F*+\V'7Q=OS\9-B^12SNM&
M(E/_?9,SN5PV2JH=7W>B9_LZFX*'/_]43]LOK[[,35;)6;'\;[ZH[]^>3<Z"
MA;S-MLOZ4_'PB]Q]H:C1FQ?+JOTW>-C9CL^"^;:JB]6NL&K!*E\__I]]WSGB
MH "E'07HK@ ]*L!X1P&V*\".:X@["H2[ N%Q#5T%HEV!Z*@ 81T%^*X [UL@
MWA6(VV ]>K<-39+5V>5%63P$96.MU)H?VOBVI55$\G73%:_K4OTU5^7JRUFQ
M7JB.)1>!^JDJEODBJ]6'ZUK]IWI<707%;7!]GY7ROE@N9%G],Q!?MWG](WCQ
M>9UM%[FR?AF,@L_72?#B[R\OSFO5J$;Z?+YKP/O'!M#.!JQ6JDM>U\7\2_#G
M1[FZD>5?@,S,+?-NH9JB^G:V#*ZR?#'*U\$LV^2U^NP03=RBGV2M+F;E#I&5
MZWQ]5[FTA*>!O\U^#=[5=9G?;.OL9BF#NE!-+96/7:JI6_7W0GU#L]BYZ@'[
M;D#WW8"V.F&'SOMLF:WG,GBA_%8UT:Y>!ED=)'+^.F#D54#'E$"Q?52-6M5F
MU/MV21@A$0N5];?#Z#FK;\;;-]4FF\NW9VI K63Y39Y=_N-OA(__!44-4TQ@
MBJ5(8D8,V3Z&K%<,^\3M48D;<5.SU_@H:K;9D45B6W :3B:6E+ -1Q,^M>Q2
M0)#$$3DT-+P3[KT3.KWS'S6MY^MYL9*0/YQE!W:"&:98$MI76$3M4 G;[MBS
M?B7#L='>L9'3L;L!O&H'\%)NMN7\/FLFE&R]4)_KO%0_'XPKD/LCJVDC$H_M
M_NALR5#/8HH)3+$42<P()]^'DS\YG% (N7U] P,*MP,=1999 ICQJ3U8"-ON
MN-,#2G'$.SM]O/=2[/12NUP9W;2.46.* H,J:Y?6\GOS,SC&.!6'CC&Q];T@
M/V)6*>PJCYWM:Y3AZLG>U1.GJ]LE3NMDM09M&.B;= SD$]^,-9OXOD;BM1"V
MQ4@M>NS)S&]GN&2Z=\GT6:Y1I^K0'CCM=RECUBGL.H\][FV5X7 RUI@T/F6!
M_#$K]PLM"L+/V)YUZ30$5LCN!@R=W%#5!*I:BJ5FAO* >$G?=;(_? 18* ,+
MDYV=:U0!3#A3L&3/:H#EB(R!15\*:=*03+L[O 9"\CQ$2'HCH;L!@SL\*A2B
MJJ58:F8H-1<2/# D/<EP9^?L\+9)!QL"EC <0I)..B0:#\E3^-!=>.C4B:J6
MH*H)5+64V-!)8S+ICI>F3N+&SH[QZ5IN5 <?.T9TFS4)#>.8C:/C+HY*FZAJ
M E4MQ5(S0ZF)D[B1\V!\\H?/YDQ".3 ^>=$P 4PXC2( ,P'+$0EI" Q0@*9J
MGV. TL1)W,AY\@K4IK*N%2@F+B:H:@)5+<52,T.IB9:XD7;0"M0F6G@%ZN=:
MP*1K!0J!*[P"!33=*U -N<1-N9X9&15F4=428E,HG]K; P*PL_SKE3+/>S30
M4C?08FS;4AMN1Y0VO'U\^H/*MJAJ E4MQ5(SHZK9EKK9]M2=(6IS+K1]2P$R
MY;9= ME-IO8T+0##XRL TFJENBZ!@S-/-^*>LHGKEAPZ[% ;E@'82E K%4"E
MEL]][3(]KDF4NDGTMTWCWTHY6);SO.HQPMC -V&,'G=+9ZV#AQ=,-8&JEF*I
MF?'3D$S=D&S%#XP9*BM3FR"!Y4^"6JD *K4N$5^[3!=KKJ5NKAUVW+$3<YUW
M4!MX+>=Y301@,J+<WN]/>QB:GM&82)_G9-(M.[@_ BP(CMF8M0J@5LOQWH:9
M?M?@24\"SW]OUVY4IQ!XQG1"8G;<15'!$U5-H*JE6&IF*#5XTM[@Z0\? )[4
MWKR=43]X B:<D3&P$PQ8CE2M,3#. )ID&G:#)]7@29\"GN["@X<35/"D-BU&
M8P \ 3O+OUXI,TE-@R=[?O!D$'A&4VHGL*&")ZJ:0%5+L=3,J&KP9,\#GJP?
M>+*>X G9D7$$Y,L!EE8J(B1&2'?V$-/HR?#1TRTY=.!A_= 3M5(!5&HY?1!Z
MLH/D6&3T9+W0TUWKX $&%3U1U5(L-3-^&CT9 GJZ-09?(OW0$[52 51J72*#
MT)-I]&28Z,G\Z,G\Z.DW$8#)B#!@2=C#T/2,1D_V/.CIEAW<'WNB)VJM JC5
M<OPP]&0:/=E)Z.D])680>H*'_.X&#!Z_4=$352W%4C-#J=&3]49/?_@@] 0.
M^9D?/0&3CD-^P++CD!]HGON0GVGT9&[T[)%U!WO,IC5"*>5LS(]]A@J<J&H"
M52WMXQ/S5B+-L&&_;. ^H=E)F9W99O)9:#/M<6<&3#@E0!<5@*7JS!,@I0YH
M'A_'D;TW\\'CDS_)7XZ!(M0D&;I)TG.CEK/PX#NU,-62T.;%"$)/P,Z*BE?*
M]*X&S] -GAB[+Z&-:"VSVUT:-<,754V@JJ58:F94-=R&;K@]=7T: G=E KLO
M(9"?RV([;RB!#$-N]PP!&%J7 )04S+IW(,.#.T'=*'G*YHM;<O"X Z3% @MY
MU$H%4*GE<U^[3(]KL@S=9#EX\R4$LG3'4QI9/1,U1Q=53:"JI5AJ9@0U 8=N
M NZU_1("R;G :(*)ITGHQ5/A-TD!$Q9U[ZF$FF!#-\$.VU/9B;GV5$+O;9B)
MWT0 )N"6BM_.](O&P="-@R?/6$[9P>,PP'S@0(Q9JP!JM?SN;9CI=PV8X4F
M>9B&S$"_0S!%6!1%QX#I;L#@RQL5,%'54BPU\[$+&D*CWA#J#5\$02BPTHO\
M$ J8<$H)D-P)6(Y4EP&RR('F\?%TTGW2%FF<C/K=[3ET1R6R":QC1\7=@,%/
MI<!4$ZAJ:1^?F&'27!KUN]VT5VAHOQV5R'O:F  F'3LJ@&7'C@K0O(X=%8]/
MW#LJD:;#R$V'[AT5=^&A,RJJ6H*J)E#5TLAF9W:4(&7&2_-I-/"HT_OX'%0X
M155+4-4$JEH:V;A+6'A(F68$#QZ)].2;4^%I&L!>PAD/0VO2005?5#6!JI;V
M\8D9)@VUT4DWGL*A =B6V,0TB_PWG@(FG,:1+28 RV;2 9XT S2/$S;M/I.*
M-,)&3[[Q%/88= @+(H.[ 8,[,^HA+*I:BJ5FAE)3=W32C:=P^*!#6 @9_(>P
M@$D7,D"'L# R )IN9-",'#TE_]==>/!DBTK+$4#I)(3\[$\ [J%E/F!.@RM_
M_@Q@#F4 Q_;]*#-W6X8Z&%5-H*JE6&IF5#5H\^?) .9 !C  <QS* (8>'0@_
M/ EZ>" J&\/U3KOW2KEF8XZ?+.R6'#I*<1M^H6U2P,QRNC\#V%N9Z4:-P1PY
M YC;)Y $&F%0D1=53:"JI5AJ9@ U%W.$%&"WQN".;Q-B9&\.):B5"J!2ZQKQ
MM<MTL097CID"S/TIP-R? NPW$8 )M4\64Z^9Z96#1^(^TS-Q4=-_.0"#X"CL
M/Q'UFZ3^VDQG:ISDGA/14F;5MORQ>^3_N_G7;>._5\'5SJW!59DK1KG.[];Y
M;3[/UO7RA^J$@?@^EU7[/H+9MFR?FY]F>1G\D2VW\E60R&I>YNT( 88"]>F[
MW$;;$? <G02U5H&JEOJ_@QE@#9F\'V0Z[A<&@9/;1$?() ;V"]P-&#SCHA[N
MHJJE6&IF*#4)\WZGQ;W"-P4VR.QE]XQ[T3,!3#AE#+B1%; <$<:@N0'0),0Q
M/<2:9V,WS[KW"]R%!S_W&Q5G8^#IQ"%PCY, #(\=W$/+]*\FR_CI9.E;R\<
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
M77X<)B3VX/0(IK- E754BL-<^OEGMSY>_"YCCF?$5VVN((GC0+EUY(JGS]J
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
MPP;//?*\ >LKBU3H)WS \(!<_ -02P,$%     @  79H5^-)"L!3"   \14
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
M&_92:JY3R16[]0B54N'VQ1O-C?>;HUEZYDJ>BM,.AL4)NQ2=LU\>#2;]XWO
MCENPX_NLG]7%NA8^-]E6S1SC.F._&8GRO<=]!=?LN72I,@[7[*^WXJ-G%\JD
M=W_OB^E^KY/N3P_J$HBA.OV#A)VK,N?LQIJW(LW1 @M8%A:R>)15J7<)9-,N
M>\+!#C,G,PF"8&:^462DF;#7/NL^9? ;M!&F89S]$^)=QG@Q/S['PX+K:HZ9
MQR-+(*\TC";LFI>*@&48+2M%3!AWSJ2$&#C <\SG@I41&3$'<,PJJ3*I%\UC
MUT74F8BB %,XDJ*;73!\845HH0202BN7E);4%"77ZX2]XK8P>LUN%'=>I@Z!
M1HG7LI"4RB>_/)H.A_WC6C#<#8Z?)FS%'4M!PB04 C8K+:S+94E)07*<#XC&
M@^YD\G-XF['9^IL+05DYF'9'XRW=KZ2NR][FTGT2?VF<I!RZ;_:,B@)]:6 ;
MEVEE+749N1(?2U!Y*#N%[G!55P,T7) $U2XWE1,KR\N@X]8@'8'<,FN0CHIJ
MIOBZ:&S"P%)FB&5>!;PIQ\Q2AY,IQY4(671P#$+ 8[)";4 E-)JL- T1S$7"
MWCPC*[).& B%EZ62*8\)L0*S9,E8CI.#?:BX(L<84%N%(R\UH;QS/K/HC2Y-
M$\^RD,YD3ZMI4(BKR - [R @V<O8<]1!@\/C0 JH#9^AHBB %^%P9.=ER:U0
MS(D%I8A*&G(B/=#/+4(C6U(#!#U .@E_Z .<C?J.*<,!;I5+U!C-L*BXY>A'
M0=5+%>):"K6F9HIV,HGL(W#F<OC-C4)Y0L:_TFLQV48IW%CD[=_8H6040B+V
M?CTT@(,^8Y6740Y=558VS=% 0<%8B5X$A@UC4%"XDJ$@#7=TVW&MFQ*!P @R
M7%&*,><,'1&JE*;&9CA$:C(ZO[UDTP&.JLN6)ML:UG4)L.D?<@=2![&@;MIX
M=(D*70!_2#I%CEB6'.U$I6MF??.Z88SW5R]<0Q==]C)T@4'$G]GS.?>Q^>:$
M@I%BTD"NFS2(;; B@YD@TL,(MWBW!:2K*532HL=F0HNY3!M.IU?PDE 1$R8Q
M7B8)L[XY1!J9V("-6<IVZSB+R)N:P"6EBY-6Z [I0H*QXQDKDF <@VYC \S0
M)QILL'-N\>;<VO5J!573,8FNDCOG7N,;L.JLBW@\[HI]R4U='A()C9O6YT+D
MERV-&5>AF<*6Y[Z,KO5>-\4&8COV>(YU-8P']GI;4]&> (AD32%8(,WOQ._:
M/8K,1<.[40"*-!FH42D*:4F[]ST)#[0*36DC2UUSC3\@@M2^'M&F'@!1SVD1
M5U%!JRC#(@ET,[1PLTV&_L'%<'=$&];(V..#I-\?X*<?1!\?)H?32;@-\1$C
M&V*M)!QED5L5B"@P:!U$M\6D:8R^&])@G$P/MS -CI+)^.#!H+:K@@K"T&1?
M9#1$V]40'(1?S_;#<OQ#\A"1#FNH(?[AM/\-P6_"Z/Z0'HGC2/SZ@$&B=X\'
M-5ZRBVW=;:F&"MVO/"+=3X-KN'Y?D-^1[/\?X^AHN"G0]/!;,9\'WO@<WPZL
MEN+V4P8MS!C;P6 2O<85)9P*COQ1FQ _-<O XT$R/H@5V3(8=[RB D9:EQZ<
M@$DRF$PC *R60'0T'M8^$'D9%],0+:=E;TFTGX!?#ANA;9&P/*%V+JDG/AE/
M1XW@^1^7K[&/T' *N=#USI+B\,9"YE0D_NZ^/T5[6Q\3"F$7X9,)_MHPE?;Q
MNT+[M/TJ<QX_1FS$XR>=:VZ138=8YU#M=P\/.LS&SR3QQILR?)J8&8^].5SF
M@N.8)@&\GQNLIO4-.6B_59W]!U!+ P04    "  !=FA7:C,VJK@"   M!@
M&0   'AL+W=O<FMS:&5E=',O<VAE970Q-"YX;6Q]54UOVS ,O>=7$%ZQ4Q<[
M3O/1+#&0M!LV8!V"IML.PPZ*S<1"9<F3Y";]]Z-DUTL!-Q>;HOD>'R61GA^4
M?C0YHH5C(:19!+FUY2P,39ICP4Q?E2CIRT[I@EE:ZGUH2HTL\Z!"A'$4C<."
M<1DD<^];ZV2N*BNXQ+4&4Q4%T\\K%.JP" ;!B^.>[W/K'&$R+]D>-VA_E&M-
MJ[!ER7B!TG E0>-N$2P'L]65B_<!/SD>S(D-KI*M4H]N\35;!)$3A )3ZQ@8
MO9[P!H5P1"3C;\,9M"D=\-1^8?_L:Z=:MLS@C1*_>&;S13 -(,,=JX2]5X<O
MV-0S<GRI$L8_X5#'CD<!I)6QJFC I*#@LGZS8[,/)X!I] 8@;@"QUUTG\BIO
MF67)7*L#:!=-;,[PI7HTB>/2'<K&:OK*"6>3[\HB3. #+--45YC!-\ZV7'#+
MT<Q#2QE<7)@V;*N:+7Z#[1KNE+2Y@4\RP^PU/B1EK;SX1=XJ/DNXP;(/P^@2
MXB@>GN$;MN4./=_P3+D&K(+/7#*9<B9@8YE%NF:VL]Z:[JJ;SG7,S)0LQ45
M+6%0/V&0O'\W&$<?SXB]:L5>G6-/Z$A41;I@S9[95B PF76=$]QRDPIE*HWP
M^P&/%E9"I8]_NNHYF[&[GDF_UY5T:4#M@ Z(=F^+NCTEK_(6T\8[\-[XDOJO
MYA G'*FB[C:6O$1E<X2=$C0FN-S/>J^8>Z>$/9?&/>(>[8PF"."1II0A1I?<
MLB-99;-I%Q!?3R^C*")K,/16[T85!3=NL-2(K9*5.<$XWQXE:KH?7;I'TXEG
M'%^//-^#LF]$7L!T.FJR3X=#;W5=C?"DA0O4>S^HW ;1!:B[N?6VLW!9CX#_
MX?4@O6-ZSZDP@3N"1OT)C1Y=#Z=Z857I!\)661HOWLQIGJ-V ?1]IZA+FH5+
MT/XADG]02P,$%     @  79H5YNR;PC( P  R@@  !D   !X;"]W;W)K<VAE
M971S+W-H965T,34N>&ULG5;=;^,V#'_/7T'X#H<>X,5?^7#2)$#3:W%[N"*X
M=-O#L ?%9F*AMN1)<M/MKQ\E.VFZ2P-L+S$ED3_^2(ED9GNIGG2!:."E*H6>
M>X4Q]30(=%9@Q71?UBCH9"M5Q0PMU2[0M4*6.Z.J#.(P' 45X\);S-S>2BUF
MLC$E%[A2H)NJ8NJO)99R/_<B[[#QG>\*8S>"Q:QF.URC^:5>*5H%1Y2<5R@T
MEP(4;N?>331=#JR^4_B5XUZ?R& CV4CY9!<_YW,OM(2PQ,Q8!$:?9[S%LK1
M1.//#M,[NK2&I_(!_=[%3K%LF,9;6?[&<U/,O=2#'+>L*<UWN?^*73Q#BY?)
M4KM?V+>ZP\2#K-%&5ITQ,:BX:+_LI<O#B4$:OF,0=P:QX]TZ<BR_,,,6,R7W
MH*PVH5G!A>JLB1P7]E+61M$I)SNS>) &(86?8,DTSX")'+[PLC&8PQU3@HN=
MAA4JN)5514E<%TSA+##DV=H'6>=EV7J)W_$R@6]2F$+#G<@Q?VL?$.,C[?A
M>QE?!%QCW8<D]"$.X^0"7G),0^+PD@MIT& DW'/!1,99"6O##-+S,_I<O"W<
MX#R<K:2IKEF&<X]*1:-Z1F_QZ4,T"J\OD!T<R0XNH2_>7(R[$?C]$5\,+$N9
M/?UQCNY%P/-TTW[O/[P)>"P0MK*D(J=S,&Q3(M1*/O.<$LNH?C-)>2TY<\4H
MM["1I@!!;8>+3%;HW!@"$4VU(7#2T!980Z/),1?ND#3KQAPQ/GU(XSB\WEB>
M3HZN 0\4:T+)6HH.":XZ];O5NE/^[,.^X%D!C2%J?]LG0$[VKI3)*7M&19WI
MA-(IG@9J<MH0;QOQGIN"UA3HCJG</J7<YHQ:3J?MNP@["GF;SP-G8G1@0MDH
M&Y>SLJ1623L_X% K=CQ-H;#-&P6,4+4EAK;$@ J$7J]E?:@2ITA"/.W==P"/
M#N"T-.%P]& 13T]Z;Q'?K'H6W_[$)]+#Z]5>40(IDT:JS_ 1(G] -F$8DCP,
MDTY*_"A..SGVQY&3>^LVT5<Y"DG=ST%,NW?YPS6]?SE1Y(_3R _'$42Q/XJ&
M?I2.[>YD//"39&1WTV3@#\-A[R;/IZ\YQ^V6YL?IU1NJ,9"U?8*:^N:8B$\&
M5ACZR6C8.U3*_V>7IGZ21O]B-PDG?CH.>W?OO>Y#5CY"V(]B]PD'[A./VD]T
MY'9!!\[UI^!DOM!%[MP4U>2^$:8=-<?=XZ"^:>?3JWH[Y;\QM>.4N!*W9!KV
MQT,/5#LYVX61M9M6U!YH]CFQH#\;J*P"G6\EM>IN81T<_[XL_@%02P,$%
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
M+Z;KYJ&P5V^>6U^I*AA6B<,23</>,/6(:IXPC6!D[9X-"VEP/MVRQ%<?**N
MYTN)7\Q6L YV[\C93U!+ P04    "  !=FA7IR8+XI<"  #6!0  &0   'AL
M+W=O<FMS:&5E=',O<VAE970Q.2YX;6Q]5$UOVS ,O>]7$"Y0;$ 6.T[ZL38Q
MT&0KND.'H&FWP["#:M.Q4%GR)*9I_OTH.?52(,W%%B6^1SY1Y'AM[).K$ E>
M:J7=)*J(FHLX=GF%M7!]TZ#FD]+86A";=AF[QJ(H JA6<9HDIW$MI(ZR<=B;
MVVQL5J2DQKD%MZIK83=35&8]B0;1Z\:=7%;D-^)LW(@E+I >FKEE*^Y8"EFC
M=M)HL%A.HJO!Q73D_8/#3XEKM[,&K^31F"=O?"\F4>(30H4Y>0;!OV><H5*>
MB-/XN^6,NI >N+M^9;\.VEG+HW X,^J7+*B:1.<1%%B*E:([L[[!K9X3SY<;
MY<(7UJWO"4?,5XY,O06S74O=_L7+]AYV .?).X!T"TA#WFV@D.5702(;6[,&
MZ[V9S2^"U(#FY*3V15F0Y5/).,I^&$(8I/ 9[E )P@+FPM(&[JW03H2;<^.8
M.)+WC_,MZ[1E3=]A_0*W1E/EX)LNL'B+CSG#+LWT-<UI>I!P@4T?ADD/TB0=
M'N ;=K*'@6]X0+8#,G MM="Y% H6Q/+YN=%>O2W=:#^=[YP+UX@<)Q&WAD/[
MC%%V?#0X32X/)#OJDAT=8L_>KPQ\E2Y7QJTLPN][?"&8*I,__=FGX'",0=K_
M<"#.E0-3 E>!K^@1;5>*'E"%,#-U(_0&*E& -MRK+4\3>&B'IP>&_2V#A-Y%
M'A^=IX.S2_?&F3N!*I#D8*5SMHV21> 592F5Y&4/;H2MC=[T.36$\)9/?:),
M[5H[%'EF^!EJQ]#9+L^^VL/'!RU6A>3S3_U]M8MW>JU&NPP3Q4%N5IK:MNMV
MNZ%UU?;J?_=VXMT*NY2L4V')T*1_=A*!;:=(:Y!I0N<^&N(Y$)85#UZTWH'/
M2\,*MX8/T(WR[!]02P,$%     @  79H5V2+!C+I P  -@D  !D   !X;"]W
M;W)K<VAE971S+W-H965T,C N>&ULC59M4^,V$/[.K]CQT9MV)O@U 0I)9H#K
MM9WAK@SAKA\Z_2#LM:W!EEQ)QM!?WY7LF-R1I'Q))'GWV6>U;YIW4CWH$M'
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
M$;+A%5S'P]=X-?C\KLB3Z)ITER]=Q,L@#2L\Q=B+ ;ZO'*ZY;B(;[!]W\_\
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
MJ<G@XTD$IAL^G>&H"0V_),?C(RPKGM=H? #OE\1ML#5\@?X?(/L+4$L#!!0
M   (  %V:%?2*NRJW0(  "H&   9    >&PO=V]R:W-H965T<R]S:&5E=#(T
M+GAM;'U537/:,!"]\RMVW$ZGG7'P)R2DP R0]..0E@EI<^CT(.P%-+$E5Q(!
M_GU7LG'3&<(%2_*^M^]YM<MP)]63WB :V)>%T"-O8TQU'00ZVV#)=%=6*.C-
M2JJ2&=JJ=: KA2QWH+((XC#L!R7CPAL/W=E<C8=R:PHN<*Y ;\N2J<,4"[D;
M>9%W/+CGZXVQ!\%X6+$U+M#\J.:*=D'+DO,2A>92@,+5R)M$U]/4QKN GQQW
M^L4:K).EE$]V\S4?>:$5A 5FQC(P>CSC#(O"$I&,/PVGUZ:TP)?K(_LGYYV\
M+)G&F2P>>6XV(^_*@QQ7;%N8>[G[@HV?GN7+9*'=+^SJV/[ @VRKC2P;,"DH
MN:B?;-]\AQ> J_ 50-P 8J>[3N14WC##QD,E=Z!L-+'9A;/JT"2."UN4A5'T
MEA/.C+])@Y# !2R,S)XNK,$<9K*DHFOFOMO[![8L4'\8!H;R6520-=S3FCM^
MA7L =U*8C89;D6/^/SX@G:W8^"AV&I\E7&#5A23T(0[CY Q?TII/'%]RQKR&
MVM\I>S4Z/8VV[7*M*Y;AR*-^T*B>T1N_>Q/UPX]GM*6MMO0<^WBQ80HOIJX>
M<W:@/C P48J)-=JU#]\K6QX?)O9><W. 7\X(/.#>P+2@:OX^Y>ELUM.>'MW5
M)AV39U34J9W;/:J,:X2YXAEV:B6Z,T?5J#H> 8T!;9C(N5C[<(,9EDL*2B)7
MPAC2*/3[40_>0M+MA9W/9,_F,1*PK IY0"H/H4%(<7$\@9PK:FFI-*1]/PU#
M2+MQTFK*(4I2/^Z%1!E?=F9,9#0"\@#W%>'R@.;8"KEQ<7Z2)!36CT[KI>MF
M&L'-G:/%P$^3F$"780O".K7]^B=!<2_QXR2R'@=PZFH$+_JW1+5V4TI#)K?"
MU*W<GK:#<%+W_[_P>HK>,;7FI*G %4'#[F7/ U5/IGIC9.6FP5(:FBUNN:%A
MCLH&T/N5I*9H-C9!^_<P_@M02P,$%     @  79H5_QE+K>$ @  :P4  !D
M  !X;"]W;W)K<VAE971S+W-H965T,C4N>&UL?51=;]L@%'W/K[CRJFF3O-K&
M<=-TB:6F'UH?.E5-MSY,>R#V38**P0-<M_]^@%TOD]*\&"Z<<^ZYF,NLE>I)
M;Q$-O%1<Z'FP-:8^BR)=;+&B^EC6*.S.6JJ*&ANJ3:1KA;3TI(I')(Y/HHHR
M$>0SOW:G\IEL#&<"[Q3HIJJH>ET@E^T\2(*WA7NVV1JW$.6SFFYPB>9'?:=L
M% TJ):M0:"8%*%S/@_/D;#%V> _XR;#5.W-PE:RD?'+!33D/8F<(.1;&*5 [
M/.,%<NZ$K(T_O68PI'3$W?F;^K6OW=:RHAHO)']DI=G.@], 2ES3AIM[V7[#
MOI[,Z162:_^%ML-F<0!%HXVL>K)U4#'1C?2E/X<=PNE[!-(3B/?=)?(N+ZFA
M^4S)%I1#6S4W\:5ZMC7'A/LI2Z/L+K,\DW^7!B&#+W CGE$8J1AJ^/1 5QSU
MYUED; H'C(I>;M')D7?DIG KA=EJN!(EEO_S(VMM\$?>_"W(0<$EUL>0QB&0
MF*0']-*AWM3KI0?JU=#5MZ^\CCW>SW8=<J9K6N \L"V@43UCD'_\D)S$7P]X
M&P_>QH?4\Z7MN++A"'(]_([7$"X:I>P<?GG7\( O!A9<%D^_]Q5P,,7^ NP9
M&ZQ6J-Q!CRZQZ(,D'+E3=Q\RNJ>MO7<&%:-<PQ$D24A(',9Q[((TC)-3%XP>
M;1,"$U K6:#60,)L.O8P8@F9QUPSP>R5+6$C9:EA$DX2XB'3,,D\>'0$) DS
M<M(G(.,PG4Y\L.^@HYT&J%!M?)MK*&0C3-<+P^KPDIQW#?0/WCU#MU1MF-#
M<6VI\?$D"T!UK=T%1M:^G5;2V.;TTZU]#5$Y@-U?2WO%^L E&-[7_"]02P,$
M%     @  79H5RRN+^V# @  H 4  !D   !X;"]W;W)K<VAE971S+W-H965T
M,C8N>&UL?53O;],P$/W>O\(*$P)I+&G2;MEH(ZT#!!)#U3K@ ^*#DUP;:_X1
M;&?M_GO.=A:*U/5+<^?<>_>>T[O95ND'TP!8LA-<FGG46-M>Q;&I&A#4G*D6
M)+Y9*RVHQ51O8M-JH+4'"1ZG27(>"\ID5,S\V5(7,]59SB0L-3&=$%0_+8"K
M[3P:1\\'=VS36'<0%[.6;F %]GN[U)C% TO-!$C#E"0:UO/H>GRUF+AZ7_"#
MP=;LQ<0Y*95Z<,F7>AXE3A!PJ*QCH/AXA!O@W!&AC#\]9S2T=,#]^)G]D_>.
M7DIJX$;QGZRVS3S*(U+#FG;<WJGM9^C]3!U?I;CQOV0;:J?8L>J,5:('8RZ8
M#$^ZZ^]A#Y G+P#2'I!ZW:&15_F!6EK,M-H2[:J1S07>JD>C.";=1UE9C6\9
MXFSQ35D@%^0=N:XJW4%-OC):,LXL T/>W-.2@WD[BRVV<H"XZFD7@39]@?:2
MW"II&T,^RAKJ__$Q2AQTIL\Z%^E1PA6T9R1+3DF:I-D1OFSPG7F^[(AO0X*_
M0_8">G(8[2;ERK2T@GF$HV! /T)4O'XU/D_>']$V&;1-CK$7*YR\NN- U/K@
M9_GE99-[V%FRX*IZ^'W(P=$>AQW@)5L0)6AWTZ,/4/7)^'3DKMW]I*,E?=**
M<P([7 P&Y5!9$TMW&+7TR2L[(>EE?IHD"4;CS$>C&R4$,VZ6 Z)4LC-[&'>V
M 0F:<AS58)KOF9[F%Y[Q_'+J^>Z5?:'RA.3YM.^>9YF/#GV5>&]J!.B-WPV&
M5*J3-@S0<#JLG^LP=?_*P^ZZI7K#T!B'-4*3LXMI1'38!R&QJO4S6"J+$^W#
M!E<H:%> []<*_X]]XAH,2[GX"U!+ P04    "  !=FA7TUROLAL#   ,!P
M&0   'AL+W=O<FMS:&5E=',O<VAE970R-RYX;6R=54N/TS 0OO=7C )"((6-
M\VB;EK;2=ED$!U8KRN. .+C)M(DVL8/M;I=_S]A)0XM*#USBL3WSS3<SGLEL
M+]6#+A -/-65T'.O,*:9!H'."JRYOI(-"KK92%5S0UNU#72CD.?.J*Z"B+%1
M4/-2>(N9.[M7BYG<F:H4>*] [^J:JU]+K.1^[H7>X>!3N2V,/0@6LX9O<87F
M2W.O:!?T*'E9H]"E%*!P,_>NP^DRL?I.X6N)>WTD@XUD+>6#W7S(YQZSA+#"
MS%@$3LLCWF!562"B\;/#]'J7UO!8/J"_<[%3+&NN\496W\K<%',O]2#'#=]5
MYI/<O\<NGJ'%RV2EW1?VK>YHXD&VTT;6G3$QJ$O1KORIR\.10<K^81!U!I'C
MW3IR+-]RPQ<S)?>@K#:A6<&%ZJR)7"EL459&T6U)=F9Q)PU""J]AR769 1<Y
MO"VKG<$<;KD2I=AJN$<%-[*N*8FK@BN$EY_YND+]:A88HF"!@JQSMVS=1?]P
M-X&/4IA"PZW(,3^U#XAZSS\Z\%]&%P%7V%Q!S'R(6!1?P(O[?,0.+[Z0#PUM
M?.?":ZV3\]:V@Z:ZX1G./6H1C>H1O<6+9^&(O;G +>FY)9?0%ROJR'Q7(<C-
M:7%<5?PS)?SN H'/^&1@6<GLX<>YF"YZ/1\3=028@I +A7A24SA<W1'.R<V
M:F6P7A-A6["3W<"6SWZB(^F.9E(I,EG3BQ.[&A4W4KV"YQ#Z"=DPQD@>LKB3
M8C^,TDZ._''HY('+C8:7.0I)_>,@IH,V57O7L\29/Q+X%B%K7[EN;6B&:4/I
MI#Q#&/KC-/39.(0P\D?AT _3L3V=C!,_CD?V-(T3?\B&@^L\GT)N2T #!W"S
MH0ED:W9 -U0(D(V=2IHZ;TS$)XD5AGX\&@X.Q?M_=FGJQVGX%[L)F_CIF WZ
ME]-0ZH\A#UEY#NPJC-S"$K=$HW8)>VX7=.#<2P^.)A05<NOFL";W.V':8=6?
M]J/^NIUP?]3;_\1'KK8E):["#9FRJ_'0 ]7.WG9C9./FW5H:FIY.+.AWA<HJ
MT/U&4H]W&^N@_P$N?@-02P,$%     @  79H5ZFQ5J#^ P  R H  !D   !X
M;"]W;W)K<VAE971S+W-H965T,C@N>&ULG59+;^,V$+[[5Q#JHF@!-GJ_4MM
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
M*KN!UG>2&D!OV #C^[CZ%U!+ P04    "  !=FA7A$9T!I\"  "G!0  &0
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
M>A=X"773V9N-597O=9FRV#G]LL1A"-HYX/E*8;]K-RY -UZG_P!02P,$%
M  @  79H5VHKZ!%'!   <!0  !D   !X;"]W;W)K<VAE971S+W-H965T,S8N
M>&ULK5AM;^HV%/XK5C9-O=+6O+_  *D42IAT*U34[;.;&(B:Q)EMX-Y_/]L)
M&4U,;KJ%#Y#8YWG..?;C8^/)&9-W>D"(@6]9FM.I=F"L&.LZC0XH@_0>%RCG
M/3M,,LCX*]GKM" (QA*4I;IE&)Z>P2379A/9MB&S"3ZR-,G1A@!ZS#)(OL]1
MBL]3S=0N#2_)_L!$@SZ;%'"/MHB]%AO"W_2:)4XRE-,$YX"@W51[,,?K0-A+
M@S\3=*97ST!D\H;QNWA9QU/-$ &A%$5,,$#^<T*/*$T%$0_C[XI3JUT*X/7S
MA?U)YLYS>8,4/>+TKR1FAZD6:"!&.WA,V0L^AZC*QQ5\$4ZI_ ;GRM;00'2D
M#&<5F$>0)7GY"[]5XW %X#QJ@%4!K"; N0&P*X#=%^!4 *<OP*T ;E^ 5P&\
MO@"_ OA]1RFH $%?#Z,*,))R*.=/3OX",CB;$'P&1%AS-O$@%231?,Z37&A]
MRPCO33B.S9XQ0R  OX$YI$D$8!Z#19(>&8K!$I(\R?<4;! !CSC+N#:W!T@0
MMWY!$<ZC)$V@E"S>@6>^+M=YA#,D29Z/V1N'\0X)H>"5<LHD%T3%D4D8%=T*
MOYLMN%L@!I.4?N&^7K<+</?SEXG.>+XB:CVJ<IN7N5DW<K/!5YRS P7+/$:Q
M A]VXT<=>)V/<SW8UF6PYU8GX185]\ V?@668=F*>!Z[X7\<\T[XHAO^%1(.
M-V_"E_V#MQ3PI_[!J^"K_L&KX.'_&_GU?\[]@Q#L>M79DL^YM>KX8DGD8E&I
MNL1Z$BOVJM/,=&R#?R;ZZ5HM"CO3\5IVB[:=ZUHMLZ7"S+!;9D]M,V_4-ELI
M@G.MMM>P;6>;5M"R6[?M+-_\8/=A)IQZ)IS.F2C+SUGNB;SVP!,B?(L'45GN
M:%F[^!F!,EZB>#4$=\FE65F12F_NASGQ ]/PS<;D=88E3CAC6L (335^A*&(
MG) V^^4GTS-^5RW\(<F6BA0LSW3-P&\H84BOJR')0M4LC'S'MKV&JE2Y!K;C
M&JY:5FXM*[=35@]Q/ :QV-#X40Z@W8Z?[<1N=]$5P]$[P$6Y"_Y 4FXKQF8A
MZ(SELUH:DFS9CMVWS9'3$-*0+E=#DH4_'/NU(D/7]F[(QZOEXW7*YW(4&JXN
M>7WK4F=@G]72D&1+10J6%P1VT$CA:4BOJR')0M4L*.N2*M>1,0K\&]N=7PO+
M[['=H<O)ON!']&M)217%.$TA*3MEJU)0I1__>F7<FU9#3)W!?%9,0Y(M5>$;
MS;HTI,?5D&2A*GRK*2*ED:D64% +*.A5F8:04-!'0IWA?%9"0Y(M5>&W)#2D
MQ]609*$J_):$E$9-">E7UP\9(GMY=T6Y*HXY*_\3U:WU]=B#O!5JM,_-\<I4
MM(?F>%W>?OU+7][%\;^%^X0?H5*TXZZ,>Y^73%+>;Y4O#!?R\N,-,X8S^7A
M,$9$&/#^'<;L\B(<U)>,LW\ 4$L#!!0    (  %V:%=@=S^LD0(   X&   9
M    >&PO=V]R:W-H965T<R]S:&5E=#,W+GAM;(U5WT_;,!#^5T[1'D"")DT"
M ]16@E;3D 9#%+:':0]N<FTL_".SG;;[[W=V0M>Q%GA)?.?[OO-]SET&*VV>
M;(7H8"V%LL.H<JZ^B&-;5"B9[>D:%>W,M9',D6D6L:T-LC* I(C3)#F-)>,J
M&@V"[\Z,!KIQ@BN\,V ;*9GY?85"KX91/WIVW/-%Y;PC'@UJML INL?ZSI 5
M;UA*+E%9KA48G ^CR_[%)/?Q(> ;QY7=6H.O9*;UDS>NRV&4^ .AP,)Y!D:O
M)8Y1"$]$Q_C5<4:;E!ZXO7YF_Q1JIUIFS.)8B^^\=-4P.HN@Q#EKA+O7J\_8
MU7/B^0HM;'C"JHM-(B@:Z[3LP'0"R57[9NM.ARU /]\#2#M ^EY U@&REX!L
M#R#O $'JN"TEZ#!ACHT&1J_ ^&AB\XL@9D!3^5SY:Y\Z0[N<<&YTJQW".1S#
M95$TLA',80E?784&QEK2EU3Y*UXB?-'6PL$$'>/"P@.N7</$(0$?IQ,X^' X
MB!T=QY/&19?ZJDV=[DD]Q;H'67($:9)F.^#CU^$3+ C>#_#T7WA,(FR42#=*
MI($OW\/WE@#7JM 2X< +<7@$M]22>@X/;+VK\C;5:4CE.V\Y.N[G9UF2)(-X
MN5WC[L#S_P(GKQ_^1__G*Q)DT0M'OM$D?XOVH4(HM"I)!1*&5E8+7@:59DPP
M52"T\XE9KP?="LH9B?=\,T=0T<X,40&)63-#P,9RM0"NVJGEVW]NM 02'5A3
M<O>>1*YB#OQV;U?A\59'2#2+,%DLL3;*M7ILO.WP&M/P"DW^PG^974RR7?Z\
M&W;Q7_IV4MXPL^#*@L YI4IZ'T\B,.WT:0VGZ]"/,^VHN\.RHH&-Q@?0_EQ3
M3W:&3[#Y!8S^ %!+ P04    "  !=FA7JGJAY/0!   #!   &0   'AL+W=O
M<FMS:&5E=',O<VAE970S."YX;6Q]4\ENVS 0_15"IQ9H35FNNP2R #MIT1[2
M&G&7,RV-)")<5')D.W^?(26K+I#D(G&&\]Z\69@?K;OW+0"RDU;&KY(6L;OB
MW)<M:.%GM@-#-[5U6B"9KN&^<R"J"-**9VGZGFLA35+DT;=U16Y[5-+ UC'?
M:RW<PP:4/:Z2>7)VW,FFQ>#@1=Z)!G: O[JM(XM/+)748+RTACFH5\EZ?K59
MA/@8\%O"T5^<6:AD;^U],+Y5JR0-@D!!B8%!T.\ UZ!4("(9?T?.9$H9@)?G
M,_N76#O5LA<>KJWZ(RML5\G'A%50BU[AG3U^A;&>9> KK?+QRXY#[)*"R]ZC
MU2.8%&AIAK\XC7VX !#/TX!L!&11]Y HJKP1*(K<V2-S(9K8PB&6&M$D3IHP
ME!TZNI6$P^*[16#SE+UEZ] ?B0_,UFS3>XKSGNV@H0F@9Z]N (54GOV$$_9"
MO<XY4OI PLLQU69(E3V3ZA.[M09;SSZ;"JK_\9QD3]JSL_9-]B+A#KH96Z1O
M6)9FBQ?X%E,O%I'OW7.]Z/4>7*C_1P=.H#3-U("GRAW8EI$M+/^AR')^N!3
M+P:CP35Q_3PK;6]PF-'DG39\/0SV7_CP/&Z%:Z3Q3$%-T'3V@?*Z8>4& VT7
MQ[RW2$L3CRV]4G A@.YK2Z,>C9!@>O?%(U!+ P04    "  !=FA7NQ%JB2P#
M  "2"P  &0   'AL+W=O<FMS:&5E=',O<VAE970S.2YX;6RM5EU/VS 4_2M6
M-DT@;>0[(:RM1)M.VP,,4;$]3'MPF]O6PHDSVVU!VH^?[8102%HQZ$L;V^><
MZWM]XMS>AO%;L020Z"ZGA>A;2RG+,]L6LR7D6)RP$@JU,F<\QU(-^<(6)0><
M&5).;<]Q(CO'I+ &/3-WQ0<]MI*4%'#%D5CE.>;W0Z!LT[=<ZV'BFBR64D_8
M@UZ)%S !>5-><36R&Y6,Y% (P@K$8=ZWSMVS<:SQ!O"#P$9L/2.=R92Q6SWX
MEO4M1V\(*,RD5L#J;PTCH%0+J6W\J36M)J0F;C\_J'\QN:M<IEC B-&?))/+
MOG5JH0SF>$7E-=M\A3J?4.O-&!7F%VUJK&.AV4I(EM=DM8.<%-4_OJOKL$50
M.MT$KR9XSPG!#H)?$_R71@AJ0O#2"&%-,*G;5>ZF<"F6>-#C;(.X1BLU_6"J
M;]BJ7J30/IE(KE:)XLG!)9. 7 =]0N?ZR(B\1VR.ABNA<$*@"2R4*:10ZR-6
M"$9)AB5DZ%(Y>((I"'24@L2$BF,%N9FDZ.C]<<^6:F=:WY[5NQA6N_!V[,)'
M%ZR02X'&1099!S_=ST_V\&U5D:8LWD-9AMY>P0F4)\AW/B+/\?R._8Q>3O>Z
MTGE;]/&KHS\IAM]XQ#=ZP2Z/J,,6^K"[#K:B1H:J+Z7UP(V<T'<<IV>OMRO6
M 0QBSVL!TS8P"),H;@'''< D#J-MX)-\@R;?8&^^WTO@6))B\6C_7Q>03X'_
M1G_5NT%H9A9794GOFZ6NXNR-HS\!9Z+$,^A;ZHX7P-=@#3Z\4_7[W&6Y0XJE
MAQ0;'TCLR6&%S6&%KS=G10VW/><&0=(V9QN81$[0]F8;YSN1&[6]V0D,XYW>
MC)ITHS=X,R6B9 )/*: KKFYV\Q5&YV6).="]3MT;]7^=>DBQ])!BXP.)/3FZ
MN#FZ^/5.C=MW69<!1VU<Z+JG;:.V<6[HAV[;J!W Q$F2ME'MK28C![XPW9U
M,[8J9/4M:6:;!O+<]$W/YH?NV<CMF$]5PUGUAX_R5;=Z@?F"% )1F*M0SDFL
MWBM>=8#50++2M#A3)E7#9!Z7JFD&K@%J?<[4RU /=("F#1_\ U!+ P04
M"  !=FA76X1<1<D$  #Q'@  &0   'AL+W=O<FMS:&5E=',O<VAE970T,"YX
M;6RMF5UOHS@4AO^*Q:Y6,]),^2;032*U"0%6:K=J9V8O5GOA!B=! YBUG:25
M]L>O(90F8P<E&?>B 7/>Y_C@P\'8PRTFW^D*(09>BKRD(VW%6'6MZW2^0@6D
M5[A");^RP*2 C)^2I4XK@F#:B(I<MPS#TPN8E=IXV+0]D/$0KUF>E>B! +HN
M"DA>;U&.MR/-U-X:'K/EBM4-^GA8P25Z0NQK]4#XF=Y1TJQ )<UP"0A:C+0;
M\SHQK5K06'S+T);N'8,ZE&>,O]<G23K2C+I'*$=S5B,@_]F@"<KSFL3[\6\+
MU3J?M7#_^(T^:X+GP3Q#BB8X_RM+V6JD^1I(T0*N<_:(MS%J W)KWASGM/D/
MMJVMH8'YFC)<M&+>@R(K=[_PI;T1>P+.D0NL5F#]*'".".Q68)\J<%J!<ZK
M;07NJ0*O%7BG"@:M8'#J7?);@7^JAZ 5!$TZ[,:O&?PI9' \)'@+2&W-:?5!
MDT&-FH]Y5M;)_L0(OYIQ'1O?8X9  #Z#FSKK,O8*\ +<KBDWHQ0\H25/;$;Y
M]4<TQ^4\RS/8)"FW^H(9S-],0%+.<8$ PVW[!)<4YUD*&4K!/>H,/DP1@UE.
M/W+FUZ<I^/#KQZ'.>"1U?_1YV^O;7:^M([VVP1TNV8J"L$Q1*M''_?J@1Z_S
M.]C=1NOM-MY:O< G5%T!V_@$+,.R)?V9],O_6)>]\FF__ X2+C>/RL/3.V])
MY+/3.R^31Z=W7B:/?^[.)Q?'?I (=O<\V0W/.<+;9;DLHW<ZK]'5KZ#-V'1L
M@_\-]<U^IDCL3,<3[*:BG>M:@EDH,3-LP6PFFGF!:!9).N=:HM=8M+--RQ?L
M$M'.&I@'=@>CX'2CX/2.P@/!FZQY'_/I ,C:T@1?$)6-S([E[G<V<,6!Z759
M3TJN:07G:*3Q60=%9(.T\6^_F)[QN^R!5@D+Q0!,-Q#'6*7/2"4L%@,(!HZ8
M+:*9;QQ/%K=+%K<W6?ZL$.$OM7+Y_KK[^PX5SXC\(\N67MB9@4]4PJ8J8:%*
MV$PE+%()BU7"$D6P@RSVNBSV+GSQ>,)38P6NI+[U\L_-196P4(S ] =B!#.5
M3B.5L%B,8.!*7NJ)Q,[VC:,E;M EQ^#2$@?^X]/]+$^;B^NJRE][JU^OGW.K
MGTK85"4L5 F;J81%*F&Q2EBB"':0X'Z7X/Z%U<\7:T<P$&>VDU[^N;FH$A9*
M(K!]L7;,5#J-5,)B,0+'<2753V(7>,<G>$&7',%/5+]I1BM,X7.. /]L8*A9
M?0,W504)RGMK8:_7<VNA2MA4)2Q4"9NIA$4J8;%*6*((=I#NIO&^IF=<6 U;
MX<&7EB]^OT_Z'9R;CDIIH20&QY=\[BKU&BFEQ9(8;",05X,2B:'EF-;1FFCN
M+?R:O4DRP:3"O"ZB3^ >EY_?UG'["EX_\=R*IY0V54H+E=)F2FF14EJLE):H
MHAWFM/6>T]:EA<^2+*O*EE_[/9R=E2IIH2P(RY2LYBIU&RFEQ9(@;,>1K/;)
M#'W7$4N?OK?]52"R;/9.*9CC=<EV*_==:[<_>]/L2O[0?FM>1Z:D/:[W<YOM
MMG?\;C/X#I)E5E*0HP5W95P->*$FN_W5W0G#5;/Y]HP9PT5SN$(P1:0VX-<7
MF$\YVY/:0;?+/?X?4$L#!!0    (  %V:%?WLZ("$@,  -P*   9    >&PO
M=V]R:W-H965T<R]S:&5E=#0Q+GAM;*U66V_:,!3^*U8V39W4-C?"I8-(%';I
M0SM4U.UAVH,A![#JQ*EMH)7VXW=LTA1$B%;6%^++^3Y_YWS$.=VUD/=J :#)
M8\HSU7,66N<7KJNF"TBI.A<Y9+@S$S*E&J=R[JI< DTL*.5NX'E--Z4L<^*N
M71O)N"N6FK,,1I*H99I2^70)7*Q[CN\\+]RR^4*;!3?NYG0.8]!W^4CBS"U9
M$I9"IIC(B(19S^G[%P/?,P ;\8/!6FV-B4EE(L2]F5PE/<<SBH##5!L*BH\5
M#(!SPX0Z'@I2ISS3 +?'S^Q?;/*8S(0J& C^DR5ZT7/:#DE@1I=<WXKU-R@2
MB@S?5'!E?\FZB/4<,ETJ+=("C I2EFV>]+$HQ!; ;QP ! 4@^%= 6 !"F^A&
MF4UK2#6-NU*LB331R&8&MC86C=FPS-@XUA)W&>)T?",T$-\C9Z1O"LKT$Q$S
M<KE4&*<4&<,</=,*]P<B4X*SA&I(R W^P482_TP2 31+R.>')<M-Z"GY*D2R
M9IS;]:M,TVS.)AQ(7RE II,A:,JX^HB<=^,A.7G_L>MJ3,4(<J>%[,N-[."
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
M5 B:%I=;P!&PW$ ^7U,J7FYR!_4QW^P[4$L#!!0    (  %V:%?6:JGJDP,
M %<+   9    >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;*56;6_;-A#^*P=M
M*%(@L=XLOZBV 2=JL0'M%N1E15'L RV=+:*2J)&TG?S[D92B.@XM+)D_6.21
MS]T]#Z7CS?:,_Q YHH2'LJC$W,FEK&/7%6F.)1$#5F.E5M:,ET2J*=^XHN9(
M,@,J"S?PO)%;$EHYBYFQ7?/%C&UE02N\YB"V94GXXR46;#]W?.?)<$,WN=0&
M=S&KR09O4=[7UUS-W,Y+1DNL!&45<%S/G:4?)[ZG 6;'7Q3WXF ,FLJ*L1]Z
M\GLV=SR=$1:82NV"J,<.K[ HM">5QS^M4Z>+J8&'XR?OGPQY169%!%ZQXBO-
M9#YW)@YDN";;0MZP_6_8$HJTOY05POS#OMWK.9!NA61E"U89E+1JGN2A%>(
M$$0G $$+"(X _O $(&P!X3$@/ $8MH"A4::A8G1(B"2+&6=[X'JW\J8'1DR#
M5O1II<_]5G*U2A5.+OY@$L$/X0(^HY)/P%F"DM!"P!T^R"TIWJNE^]L$SGY]
M/W.EBJAQ;MIZOVR\!R>\3^$+JV0NX&.58?8<[ZI,NW2#IW0O@UZ'MU@/(/3.
M(?""T)+/53\\P53!?0,/+/"D'_[=_[N'0]A)'AHOPQ->_JR1$TFK32/Y.9B/
M[8*M+^X%PE((E#:E&Z<CXU1_S;N%'_B>^LW<W:$"EGWC(#K<]RSK89?U\'59
M?Z9D10LJ'\_ACDE2V')N7$;/<H[\ESGWAM:E+Q8U27'NJ-HFD._06;S[Q1]Y
M'WJ.(^J(1;W$/M&*5"F^AE;T@M8QH=Z0;R0TZ@B-7G=2'Q_4+2'0QF3TXF69
M!L'+\^D-^$8ZXX[.^'5TOII:CADL=VIE@W"#^H+K=JC*Q4LX^X:$6TM6?[@
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
M@ <,21)W#AZ<1_'FG(JWOYV,?P-02P,$%     @  79H5Y>*NQS     $P(
M  L   !?<F5L<R\N<F5L<YV2N6[#, Q ?\70GC 'T"&(,V7Q%@3Y 5:B#]@2
M!8I%G;^OVJ5QD L9>3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:<Z10J[4
M+!XUA]) 1-MC0[!:+#Y +AEFM[UD%J=SI%>(7->=I3W;+T]!;X"O.DQQ0FE(
M2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'<?VD-/I
MKV,BM'I;Z/EQ:%0*CMQC)8QQ8K3^-8+)#^Q^ %!+ P04    "  !=FA7K)&:
M2QP$  !"'P  #P   'AL+W=O<FMB;V]K+GAM;,692W/;-A" _PJ&I_;@2GQ(
M?DR4F3AV6L\XB2=2<\U Y,K"& 04 +2=_/HLP*H!G7*G%T$GB2 $?5R"^RW
M5T_:/*RU?F#/K51VD6V=VUU,)K;>0LOM'WH'"L]LM&FYPT-S/[$[ [RQ6P#7
MRDDQG<XG+1<J>_UJ/]:=F<0'VD'MA%;8Z!L^"WBR/\_[0_8HK%@+*=RW11:^
M2\A8*Y1HQ7=H%MDT8W:KG_[21GS7RG&YK(V6<I'E_8G/8)RH?VE>>L@57]O0
MXOCZ$T>013:?XH ;8:P+/<+X'!D? 3OW1YW3[X1T8*ZX@S^-[G9"W?MA\"HF
MT66$..P_^R!>F/\31KW9B!JN=-VUH%P?1P/2 RJ[%3N;,<5;6&3[+NR-:MBU
M<A@D=J/ZH;"OOU+\ZYNFOVJ'N%$,S87 $^:F">"'@WRK50/*0L/PF]52-,C1
ML$LNN:J!19 % 5D<$?)+$4&6!&1Y%,BEQ\&?1I 5 5D=$7(0R1D!.3LF9!E!
MS@G(^3$AJPCRE( \/2SD!TSA+&<G;+4%Y&QW7'V+R,X(LK,$9 6277(K+-,;
M=F? XF]"USCOG!.0YPD@2X1<.ET_G*QY?[M;'-)B[SB#3ZD4/DV 62'F)ZB#
M;^I:=^@;=8]!'8J&-,V!51,P9XAYHQZQ)Y8$8&,V2C#Y@0T3V.;(=OVUZSW]
M"-8%>PO%_HXQ*<7D!W9,P#Q%3+S%IL/)>"MX*+]>A)(R3'Y@Q03&LW^>[)IQ
M+'ZNA.Q\<KSF9C ;*<?D!Y9,P#SO0]FUG0S9^Z/;@@E/>(Q)628_L&;Z##X-
MG%CG^KF)N?*RLT*!M7&>S"G/Y$E$XTWS3B@LR@278[4N)9T\A77R(J3*_H[?
M<8,A71F.&;V.,2GMY"F\DWOQW (Z)WZT"THT10K1Y%5(X;5N@:WX\Y".\DN1
MPB^Y%PQ69-Y^@/-PB$>N85(H)O>.679K"U\[+Y=K;\(!(J67(H5>QNJ=P>J@
MH Q3I##,BT*"_;;B2&%_CR$IOQ0I_#*B:H2-,2F_%"G\,F;KX2VG_%(D\<N(
M!H>8E%^*)'X9T> 0D_)+D=@O__7PE)1HRA2B&4U$\0Y 21FG3&&<?S&A>0$:
M8U+F*5.8YV6^_'D48Y+[9RGL,[8&&^[R4?8I4]AG++&?Q!5Y2?FG3.&?T<0^
M>(0H_Y0I_#.V#!O>=,H_Y5'],X@FY9\RB7_&,.--R9+R3YG"/^=C:]IEO%5.
M6:A*LMP9B^8LQJ0L5"59]XP5'?'<K"@+54G6/V.8\=RL* M5*2PTJ(VNP'$A
M+5O!L^MB3/(]3@H+Q9@8ULYU!MA[__8UQJ0L5*6PT*]K\GU08TS*0E6PT&3_
MSK:!#3Z"S0?\"XOM-9?UG6'^H]](KF9^^V;32?D6VSZJ6\V;_2O@_>OKUS\
M4$L#!!0    (  %V:%?]+-6EK@$  ,$;   :    >&PO7W)E;',O=V]R:V)O
M;VLN>&UL+G)E;'/-V;MNPD 0A>%707X EIE9;A%0I:&-> $+EHLPV/)N%'C[
M("C@6"G2H#V5M;8\_AM_LM:SKU"5Z5"?X_[0Q-[E5)WCO-BGU'PX%]?[<"IC
MOV["^79E6[>G,MV6[<XUY?I8[H+3P6#DVM<9Q6+V.K.WNC;A/Q/K[?:P#I_U
M^OL4SNF/P>ZG;H]Q'T(J>JNRW84T+]RE>IZ.[GZ0_FURT5MNYD6[W$CA<@<I
M!&G^((,@RQ_D(<CG#QI"T#!_T B"1OF#QA TSA\T@:!)_J I!$WS!\D 91P0
M)'6P)M!:D&LA\%H0;"$06Y!L(3!;$&TA4%N0;2%P6Q!N(9!;D&XAL%L0;R'0
M6U%O)=!;46\ET%L[']L$>BOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'HKZJT$
M>BOJK01Z&^IM!'H;ZFT$>AOJ;01Z6V>SA$!O0[V-0&]#O8U ;T.]C4!O0[V-
M0&]#O8U ;T.]C4!OCWI[ KT]ZNT)]/:HMR?0VZ/>GD!OW]GL)M#;H]Z>0&^/
M>OMWZAW3M0KQV?-8X_/?276ZW1N>C[\O'R<[[_@=9P=_[!:_4$L#!!0    (
M  %V:%<F^H>GM0$  -P;   3    6T-O;G1E;G1?5'EP97-=+GAM;,V9S6["
M,!"$7P7EBHBQG=(? 9>VUY9#7\!--B0BB2W;4'C[.N%':D6C(BIU+K$2[\Z,
MO=)WR?1M9\@-MG75N%E4>&\>&'-I0;5RL3;4A)U<VUKY\&J7S*ATI9;$Q'@\
M8:EN/#5^Y%N-:#Y]HERM*S]XWH;/KM3-++)4N6CPN"]LO6:1,J8J4^7#/MLT
MV3>7T<$A#IU=C2M*XX:A(&)G'=J=GPT.?:\;LK;,:+!0UK^H.E2Q;<6<WU7D
MXGZ),QEUGI<I93I=UZ$E=L:2REQ!Y.LJWHL.^YU]N&':/_G5_IU,GV&H7%AM
M7)B8I<OMCB-INT<F")'U9?\13XY!^NKS43OMC+)?>H?K_=!VU<W#L6ZY_HZ_
MSOBD?V$. 9)#@N1(0'+<@.28@.2X!<EQ!Y+C'B0''Z,$02$J1T$J1V$J1X$J
M1Z$J1\$J1^$J1P$K1R&K0"&K0"&K0"&K0"&K0"&K0"&K0"&K0"&K0"&K0"&K
M1"&K1"&K1"&K1"&K1"&K1"&K1"&K1"&K1"&K1"%K@D+6!(6L"0I9$Q2R)BAD
M35#(FOPG6=^U7OWU_Z9VC6M5-D=_UOW4FW\"4$L! A0#%     @  79H5P=!
M36*!    L0   !               ( !     &1O8U!R;W!S+V%P<"YX;6Q0
M2P$"% ,4    "  !=FA7[IIC:.\    K @  $0              @ &O
M9&]C4')O<',O8V]R92YX;6Q02P$"% ,4    "  !=FA7F5R<(Q &  "<)P
M$P              @ '- 0  >&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0
M   (  %V:%>OVKT Y@4  ,8?   8              " @0X(  !X;"]W;W)K
M<VAE971S+W-H965T,2YX;6Q02P$"% ,4    "  !=FA70U@$VM\&  #@'
M&               @($J#@  >&PO=V]R:W-H965T<R]S:&5E=#(N>&UL4$L!
M A0#%     @  79H5ZU>'TO= @  A@<  !@              ("!/Q4  'AL
M+W=O<FMS:&5E=',O<VAE970S+GAM;%!+ 0(4 Q0    (  %V:%<5NI)/^ 4
M -L:   8              " @5(8  !X;"]W;W)K<VAE971S+W-H965T-"YX
M;6Q02P$"% ,4    "  !=FA7]@Z_!LH"  !E"   &               @(&
M'@  >&PO=V]R:W-H965T<R]S:&5E=#4N>&UL4$L! A0#%     @  79H5TV[
M;]&;#0  [GD  !@              ("!@"$  'AL+W=O<FMS:&5E=',O<VAE
M970V+GAM;%!+ 0(4 Q0    (  %V:%<(=G?OO@4  $08   8
M  " @5$O  !X;"]W;W)K<VAE971S+W-H965T-RYX;6Q02P$"% ,4    "  !
M=FA73 /,-YL$  !,"@  &               @(%%-0  >&PO=V]R:W-H965T
M<R]S:&5E=#@N>&UL4$L! A0#%     @  79H5^-)"L!3"   \14  !@
M         ("!%CH  'AL+W=O<FMS:&5E=',O<VAE970Y+GAM;%!+ 0(4 Q0
M   (  %V:%<J\WSKHP<  'H4   9              " @9]"  !X;"]W;W)K
M<VAE971S+W-H965T,3 N>&UL4$L! A0#%     @  79H5P*DN'U/ P  5 <
M !D              ("!>4H  'AL+W=O<FMS:&5E=',O<VAE970Q,2YX;6Q0
M2P$"% ,4    "  !=FA7>>UK&[ "  #:!0  &0              @('_30
M>&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;%!+ 0(4 Q0    (  %V:%<W(CZ'
M!P<  +<2   9              " @>90  !X;"]W;W)K<VAE971S+W-H965T
M,3,N>&UL4$L! A0#%     @  79H5VHS-JJX @  +08  !D
M ("!)%@  'AL+W=O<FMS:&5E=',O<VAE970Q-"YX;6Q02P$"% ,4    "  !
M=FA7F[)O",@#  #*"   &0              @($36P  >&PO=V]R:W-H965T
M<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    (  %V:%?*+NDB0@,  $\'   9
M          " @1)?  !X;"]W;W)K<VAE971S+W-H965T,38N>&UL4$L! A0#
M%     @  79H5Q*+K]*&!@  RA   !D              ("!BV(  'AL+W=O
M<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"% ,4    "  !=FA7"CR/H.0#  !3
M"@  &0              @(%(:0  >&PO=V]R:W-H965T<R]S:&5E=#$X+GAM
M;%!+ 0(4 Q0    (  %V:%>G)@OBEP(  -8%   9              " @6-M
M  !X;"]W;W)K<VAE971S+W-H965T,3DN>&UL4$L! A0#%     @  79H5V2+
M!C+I P  -@D  !D              ("!,7   'AL+W=O<FMS:&5E=',O<VAE
M970R,"YX;6Q02P$"% ,4    "  !=FA7<0%O494$  #H"0  &0
M    @(%1=   >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;%!+ 0(4 Q0    (
M  %V:%? TBKK9@4  $0,   9              " @1UY  !X;"]W;W)K<VAE
M971S+W-H965T,C(N>&UL4$L! A0#%     @  79H5PHDU=?# @  #08  !D
M             ("!NGX  'AL+W=O<FMS:&5E=',O<VAE970R,RYX;6Q02P$"
M% ,4    "  !=FA7TBKLJMT"   J!@  &0              @(&T@0  >&PO
M=V]R:W-H965T<R]S:&5E=#(T+GAM;%!+ 0(4 Q0    (  %V:%?\92ZWA (
M &L%   9              " @<B$  !X;"]W;W)K<VAE971S+W-H965T,C4N
M>&UL4$L! A0#%     @  79H5RRN+^V# @  H 4  !D              ("!
M@X<  'AL+W=O<FMS:&5E=',O<VAE970R-BYX;6Q02P$"% ,4    "  !=FA7
MTUROLAL#   ,!P  &0              @($]B@  >&PO=V]R:W-H965T<R]S
M:&5E=#(W+GAM;%!+ 0(4 Q0    (  %V:%>IL5:@_@,  ,@*   9
M      " @8^-  !X;"]W;W)K<VAE971S+W-H965T,C@N>&UL4$L! A0#%
M  @  79H5W3ML]HE P  *P<  !D              ("!Q)$  'AL+W=O<FMS
M:&5E=',O<VAE970R.2YX;6Q02P$"% ,4    "  !=FA7A$9T!I\"  "G!0
M&0              @($@E0  >&PO=V]R:W-H965T<R]S:&5E=#,P+GAM;%!+
M 0(4 Q0    (  %V:%=#BTUO.P4  "H>   9              " @?:7  !X
M;"]W;W)K<VAE971S+W-H965T,S$N>&UL4$L! A0#%     @  79H5Z-<=?@0
M P  Y@H  !D              ("!:)T  'AL+W=O<FMS:&5E=',O<VAE970S
M,BYX;6Q02P$"% ,4    "  !=FA719EYEML"  "U!P  &0
M@(&OH   >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM;%!+ 0(4 Q0    (  %V
M:%>E+LL/K@<  (9    9              " @<&C  !X;"]W;W)K<VAE971S
M+W-H965T,S0N>&UL4$L! A0#%     @  79H5X6N%JK6 @  :@<  !D
M         ("!IJL  'AL+W=O<FMS:&5E=',O<VAE970S-2YX;6Q02P$"% ,4
M    "  !=FA7:BOH$4<$  !P%   &0              @(&SK@  >&PO=V]R
M:W-H965T<R]S:&5E=#,V+GAM;%!+ 0(4 Q0    (  %V:%=@=S^LD0(   X&
M   9              " @3&S  !X;"]W;W)K<VAE971S+W-H965T,S<N>&UL
M4$L! A0#%     @  79H5ZIZH>3T 0   P0  !D              ("!^;4
M 'AL+W=O<FMS:&5E=',O<VAE970S."YX;6Q02P$"% ,4    "  !=FA7NQ%J
MB2P#  "2"P  &0              @($DN   >&PO=V]R:W-H965T<R]S:&5E
M=#,Y+GAM;%!+ 0(4 Q0    (  %V:%=;A%Q%R00  /$>   9
M  " @8>[  !X;"]W;W)K<VAE971S+W-H965T-# N>&UL4$L! A0#%     @
M 79H5_>SH@(2 P  W H  !D              ("!A\   'AL+W=O<FMS:&5E
M=',O<VAE970T,2YX;6Q02P$"% ,4    "  !=FA7YL3="=H"   4"0  &0
M            @('0PP  >&PO=V]R:W-H965T<R]S:&5E=#0R+GAM;%!+ 0(4
M Q0    (  %V:%=;!.F]!P0  /(3   9              " @>'&  !X;"]W
M;W)K<VAE971S+W-H965T-#,N>&UL4$L! A0#%     @  79H5]9JJ>J3 P
M5PL  !D              ("!'\L  'AL+W=O<FMS:&5E=',O<VAE970T-"YX
M;6Q02P$"% ,4    "  !=FA7G@SDT60"  !=!@  &0              @('I
MS@  >&PO=V]R:W-H965T<R]S:&5E=#0U+GAM;%!+ 0(4 Q0    (  %V:%<P
M1R7=90(  %\%   9              " @831  !X;"]W;W)K<VAE971S+W-H
M965T-#8N>&UL4$L! A0#%     @  79H5QS%#Z > P  2!$   T
M     ( !(-0  'AL+W-T>6QE<RYX;6Q02P$"% ,4    "  !=FA7EXJ[',
M   3 @  "P              @ %IUP  7W)E;',O+G)E;'-02P$"% ,4
M"  !=FA7K)&:2QP$  !"'P  #P              @ %2V   >&PO=V]R:V)O
M;VLN>&UL4$L! A0#%     @  79H5_TLU:6N 0  P1L  !H
M ( !F]P  'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @
M 79H5R;ZAZ>U 0  W!L  !,              ( !@=X  %M#;VYT96YT7U1Y
><&5S72YX;6Q02P4&     #8 -@"Q#@  9^

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<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>60
<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>61
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.23.3</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>145</ContextCount>
  <ElementCount>177</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>30</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>001 - Statement - Condensed Consolidated Balance Sheets (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>003 - Statement - Condensed Consolidated Statements of Income (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Income (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>004 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Comprehensive Income (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>005 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>006 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>007 - Disclosure - Note 1 - The Company</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-1-the-company</Role>
      <ShortName>Note 1 - The Company</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>008 - Disclosure - Note 2 - Basis of Presentation and Revenue Recognition Policy</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy</Role>
      <ShortName>Note 2 - Basis of Presentation and Revenue Recognition Policy</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>009 - Disclosure - Note 3 - Stock-based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation</Role>
      <ShortName>Note 3 - Stock-based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>010 - Disclosure - Note 4 - Recent Accounting Pronouncements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements</Role>
      <ShortName>Note 4 - Recent Accounting Pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>011 - Disclosure - Note 5 - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-5-inventories</Role>
      <ShortName>Note 5 - Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>012 - Disclosure - Note 6 - Equity Investment in Unconsolidated Affiliate</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate</Role>
      <ShortName>Note 6 - Equity Investment in Unconsolidated Affiliate</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>013 - Disclosure - Note 7 - Accrued Liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities</Role>
      <ShortName>Note 7 - Accrued Liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>014 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share</Role>
      <ShortName>Note 8 - Basic and Diluted Earnings Per Common Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>015 - Disclosure - Note 9 - Accumulated Other Comprehensive Loss</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss</Role>
      <ShortName>Note 9 - Accumulated Other Comprehensive Loss</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>016 - Disclosure - Note 10 - Activity of Business Segments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments</Role>
      <ShortName>Note 10 - Activity of Business Segments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>017 - Disclosure - Note 11 - Financial Information about Geographic Areas</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas</Role>
      <ShortName>Note 11 - Financial Information about Geographic Areas</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>018 - Disclosure - Note 12 - Related Party Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions</Role>
      <ShortName>Note 12 - Related Party Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>019 - Disclosure - Note 13 - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-13-leases-</Role>
      <ShortName>Note 13 - Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>020 - Disclosure - Note 14 - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes</Role>
      <ShortName>Note 14 - Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>021 - Disclosure - Note 15 - Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies</Role>
      <ShortName>Note 15 - Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>022 - Disclosure - Note 16 - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events</Role>
      <ShortName>Note 16 - Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>023 - Disclosure - Note 3 - Stock-based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables</Role>
      <ShortName>Note 3 - Stock-based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>024 - Disclosure - Note 5 - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables</Role>
      <ShortName>Note 5 - Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-5-inventories</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>025 - Disclosure - Note 7 - Accrued Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables</Role>
      <ShortName>Note 7 - Accrued Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>026 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables</Role>
      <ShortName>Note 8 - Basic and Diluted Earnings Per Common Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>027 - Disclosure - Note 10 - Activity of Business Segments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables</Role>
      <ShortName>Note 10 - Activity of Business Segments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>028 - Disclosure - Note 11 - Financial Information about Geographic Areas (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables</Role>
      <ShortName>Note 11 - Financial Information about Geographic Areas (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>029 - Disclosure - Note 13 - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables</Role>
      <ShortName>Note 13 - Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-13-leases-</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>030 - Disclosure - Note 3 - Stock-based Compensation (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual</Role>
      <ShortName>Note 3 - Stock-based Compensation (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>031 - Disclosure - Note 3 - Stocked-based Compensation - Stock Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details</Role>
      <ShortName>Note 3 - Stocked-based Compensation - Stock Option Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>032 - Disclosure - Note 5 - Inventories - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details</Role>
      <ShortName>Note 5 - Inventories - Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>033 - Disclosure - Note 6 - Equity Investment in Unconsolidated Affiliate (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual</Role>
      <ShortName>Note 6 - Equity Investment in Unconsolidated Affiliate (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>034 - Disclosure - Note 7 - Accrued Liabilities - Accrued Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details</Role>
      <ShortName>Note 7 - Accrued Liabilities - Accrued Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>035 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details</Role>
      <ShortName>Note 8 - Basic and Diluted Earnings Per Common Share - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>036 - Disclosure - Note 9 - Accumulated Other Comprehensive Loss (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual</Role>
      <ShortName>Note 9 - Accumulated Other Comprehensive Loss (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>037 - Disclosure - Note 10 - Activity of Business Segments (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual</Role>
      <ShortName>Note 10 - Activity of Business Segments (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>038 - Disclosure - Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details</Role>
      <ShortName>Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>039 - Disclosure - Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details</Role>
      <ShortName>Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>040 - Disclosure - Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details</Role>
      <ShortName>Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>041 - Disclosure - Note 11 - Financial Information about Geographic Areas (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual</Role>
      <ShortName>Note 11 - Financial Information about Geographic Areas (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>042 - Disclosure - Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details</Role>
      <ShortName>Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>043 - Disclosure - Note 13 - Leases (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual</Role>
      <ShortName>Note 13 - Leases (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>044 - Disclosure - Note 13 - Leases - Future Minimum Lease Payment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details</Role>
      <ShortName>Note 13 - Leases - Future Minimum Lease Payment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="apt20230930_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>045 - Disclosure - Note 15 - Contingencies (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual</Role>
      <ShortName>Note 15 - Contingencies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies</ParentRole>
      <Position>46</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>apt-20230930.xsd</File>
    <File>apt-20230930_cal.xml</File>
    <File>apt-20230930_def.xml</File>
    <File>apt-20230930_lab.xml</File>
    <File>apt-20230930_pre.xml</File>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="apt20230930_10q.htm">apt20230930_10q.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="534">http://fasb.org/us-gaap/2023</BaseTaxonomy>
    <BaseTaxonomy items="30">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>64
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "apt20230930_10q.htm": {
   "nsprefix": "apt",
   "nsuri": "http://www.alphaprotech.com/20230930",
   "dts": {
    "schema": {
     "local": [
      "apt-20230930.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/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/currency/2023/currency-2023.xsd",
      "https://xbrl.sec.gov/dei/2023/dei-2023.xsd",
      "https://xbrl.sec.gov/exch/2023/exch-2023.xsd",
      "https://xbrl.sec.gov/naics/2023/naics-2023.xsd",
      "https://xbrl.sec.gov/sic/2023/sic-2023.xsd",
      "https://xbrl.sec.gov/stpr/2023/stpr-2023.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "apt-20230930_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "apt-20230930_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "apt-20230930_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "apt-20230930_pre.xml"
     ]
    },
    "inline": {
     "local": [
      "apt20230930_10q.htm"
     ]
    }
   },
   "keyStandard": 166,
   "keyCustom": 11,
   "axisStandard": 14,
   "axisCustom": 0,
   "memberStandard": 14,
   "memberCustom": 13,
   "hidden": {
    "total": 15,
    "http://fasb.org/us-gaap/2023": 8,
    "http://xbrl.sec.gov/dei/2023": 5,
    "http://www.alphaprotech.com/20230930": 2
   },
   "contextCount": 145,
   "entityCount": 1,
   "segmentCount": 30,
   "elementCount": 271,
   "unitCount": 7,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 534,
    "http://xbrl.sec.gov/dei/2023": 30
   },
   "report": {
    "R1": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information",
     "longName": "000 - Document - Document And Entity Information",
     "shortName": "Document And Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
     "longName": "001 - Statement - Condensed Consolidated Balance Sheets (Unaudited)",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
     "longName": "002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:CommonStockSharesAuthorized",
      "unitRef": "Share",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:CommonStockSharesAuthorized",
      "unitRef": "Share",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
     "longName": "003 - Statement - Condensed Consolidated Statements of Income (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Income (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
     "longName": "004 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Comprehensive Income (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "apt:OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
     "longName": "005 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember",
      "name": "us-gaap:CommonStockSharesOutstanding",
      "unitRef": "Share",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R7": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
     "longName": "006 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "7",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ShareBasedCompensation",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R8": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-1-the-company",
     "longName": "007 - Disclosure - Note 1 - The Company",
     "shortName": "Note 1 - The Company",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
     "longName": "008 - Disclosure - Note 2 - Basis of Presentation and Revenue Recognition Policy",
     "shortName": "Note 2 - Basis of Presentation and Revenue Recognition Policy",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
     "longName": "009 - Disclosure - Note 3 - Stock-based Compensation",
     "shortName": "Note 3 - Stock-based Compensation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements",
     "longName": "010 - Disclosure - Note 4 - Recent Accounting Pronouncements",
     "shortName": "Note 4 - Recent Accounting Pronouncements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories",
     "longName": "011 - Disclosure - Note 5 - Inventories",
     "shortName": "Note 5 - Inventories",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
     "longName": "012 - Disclosure - Note 6 - Equity Investment in Unconsolidated Affiliate",
     "shortName": "Note 6 - Equity Investment in Unconsolidated Affiliate",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities",
     "longName": "013 - Disclosure - Note 7 - Accrued Liabilities",
     "shortName": "Note 7 - Accrued Liabilities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
     "longName": "014 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share",
     "shortName": "Note 8 - Basic and Diluted Earnings Per Common Share",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss",
     "longName": "015 - Disclosure - Note 9 - Accumulated Other Comprehensive Loss",
     "shortName": "Note 9 - Accumulated Other Comprehensive Loss",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
     "longName": "016 - Disclosure - Note 10 - Activity of Business Segments",
     "shortName": "Note 10 - Activity of Business Segments",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
     "longName": "017 - Disclosure - Note 11 - Financial Information about Geographic Areas",
     "shortName": "Note 11 - Financial Information about Geographic Areas",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "apt:FinancialInformationAboutGeographicAreasTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "apt:FinancialInformationAboutGeographicAreasTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions",
     "longName": "018 - Disclosure - Note 12 - Related Party Transactions",
     "shortName": "Note 12 - Related Party Transactions",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-",
     "longName": "019 - Disclosure - Note 13 - Leases",
     "shortName": "Note 13 - Leases",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes",
     "longName": "020 - Disclosure - Note 14 - Income Taxes",
     "shortName": "Note 14 - Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
     "longName": "021 - Disclosure - Note 15 - Contingencies",
     "shortName": "Note 15 - Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events",
     "longName": "022 - Disclosure - Note 16 - Subsequent Events",
     "shortName": "Note 16 - Subsequent Events",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "23",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables",
     "longName": "023 - Disclosure - Note 3 - Stock-based Compensation (Tables)",
     "shortName": "Note 3 - Stock-based Compensation (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "24",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables",
     "longName": "024 - Disclosure - Note 5 - Inventories (Tables)",
     "shortName": "Note 5 - Inventories (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "25",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables",
     "longName": "025 - Disclosure - Note 7 - Accrued Liabilities (Tables)",
     "shortName": "Note 7 - Accrued Liabilities (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
     "longName": "026 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share (Tables)",
     "shortName": "Note 8 - Basic and Diluted Earnings Per Common Share (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables",
     "longName": "027 - Disclosure - Note 10 - Activity of Business Segments (Tables)",
     "shortName": "Note 10 - Activity of Business Segments (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables",
     "longName": "028 - Disclosure - Note 11 - Financial Information about Geographic Areas (Tables)",
     "shortName": "Note 11 - Financial Information about Geographic Areas (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "apt:FinancialInformationAboutGeographicAreasTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "apt:FinancialInformationAboutGeographicAreasTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables",
     "longName": "029 - Disclosure - Note 13 - Leases (Tables)",
     "shortName": "Note 13 - Leases (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual",
     "longName": "030 - Disclosure - Note 3 - Stock-based Compensation (Details Textual)",
     "shortName": "Note 3 - Stock-based Compensation (Details Textual)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "31",
     "firstAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "unitRef": "Share",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30_AwardTypeAxis-EmployeeStockOptionMember",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R32": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
     "longName": "031 - Disclosure - Note 3 - Stocked-based Compensation - Stock Option Activity (Details)",
     "shortName": "Note 3 - Stocked-based Compensation - Stock Option Activity (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "32",
     "firstAnchor": {
      "contextRef": "i_2022-12-31",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "unitRef": "Share",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "i_2022-12-31",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "unitRef": "Share",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details",
     "longName": "032 - Disclosure - Note 5 - Inventories - Inventories (Details)",
     "shortName": "Note 5 - Inventories - Inventories (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "33",
     "firstAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
     "longName": "033 - Disclosure - Note 6 - Equity Investment in Unconsolidated Affiliate (Details Textual)",
     "shortName": "Note 6 - Equity Investment in Unconsolidated Affiliate (Details Textual)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "34",
     "firstAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "apt:ExpenseToAcquireInventory",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "apt:ExpenseToAcquireInventory",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
     "longName": "034 - Disclosure - Note 7 - Accrued Liabilities - Accrued Liabilities (Details)",
     "shortName": "Note 7 - Accrued Liabilities - Accrued Liabilities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "35",
     "firstAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:AccruedSalariesCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:AccruedSalariesCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
     "longName": "035 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)",
     "shortName": "Note 8 - Basic and Diluted Earnings Per Common Share - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "36",
     "firstAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "unitRef": "Share",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R37": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
     "longName": "036 - Disclosure - Note 9 - Accumulated Other Comprehensive Loss (Details Textual)",
     "shortName": "Note 9 - Accumulated Other Comprehensive Loss (Details Textual)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R38": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual",
     "longName": "037 - Disclosure - Note 10 - Activity of Business Segments (Details Textual)",
     "shortName": "Note 10 - Activity of Business Segments (Details Textual)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": null,
     "uniqueAnchor": null
    },
    "R39": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
     "longName": "038 - Disclosure - Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)",
     "shortName": "Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R40": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
     "longName": "039 - Disclosure - Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)",
     "shortName": "Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30_ConsolidationItemsAxis-OperatingSegmentsMember",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R41": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
     "longName": "040 - Disclosure - Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)",
     "shortName": "Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "apt:TotalConsolidatedAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "apt:TotalConsolidatedAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R42": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
     "longName": "041 - Disclosure - Note 11 - Financial Information about Geographic Areas (Details Textual)",
     "shortName": "Note 11 - Financial Information about Geographic Areas (Details Textual)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30_StatementGeographicalAxis-CA",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "apt:FinancialInformationAboutGeographicAreasTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R43": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
     "longName": "042 - Disclosure - Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)",
     "shortName": "Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "d_2023-07-01_2023-09-30",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember",
      "name": "us-gaap:NoncurrentAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "ix:continuation",
       "apt:FinancialInformationAboutGeographicAreasTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R44": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual",
     "longName": "043 - Disclosure - Note 13 - Leases (Details Textual)",
     "shortName": "Note 13 - Leases (Details Textual)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2023-01-01_2023-09-30",
      "name": "us-gaap:OperatingLeaseExpense",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "unique": true
     }
    },
    "R45": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details",
     "longName": "044 - Disclosure - Note 13 - Leases - Future Minimum Lease Payment (Details)",
     "shortName": "Note 13 - Leases - Future Minimum Lease Payment (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "i_2023-09-30",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R46": {
     "role": "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual",
     "longName": "045 - Disclosure - Note 15 - Contingencies (Details Textual)",
     "shortName": "Note 15 - Contingencies (Details Textual)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "d_2022-06-07_2022-06-07_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember",
      "name": "us-gaap:LossContingencyDamagesSoughtValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "d_2022-06-07_2022-06-07_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember",
      "name": "us-gaap:LossContingencyDamagesSoughtValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "apt20230930_10q.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SellingGeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling, general and administrative",
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc."
       }
      }
     },
     "auth_ref": [
      "r60"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "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": []
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-based compensation",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_GrossProfit",
        "totalLabel": "Gross profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r57",
      "r115",
      "r159",
      "r173",
      "r179",
      "r182",
      "r197",
      "r222",
      "r223",
      "r225",
      "r226",
      "r227",
      "r229",
      "r231",
      "r233",
      "r234",
      "r313",
      "r508",
      "r562"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid-in Capital [Member]",
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders."
       }
      }
     },
     "auth_ref": [
      "r274",
      "r275",
      "r276",
      "r410",
      "r545",
      "r546",
      "r547",
      "r591",
      "r600"
     ]
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Accrued Liabilities [Table Text Block]",
        "documentation": "Tabular disclosure of the components of accrued liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "apt_statement-statement-note-11-financial-information-about-geographic-areas-tables": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-11-financial-information-about-geographic-areas-tables",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Financial Information about Geographic Areas"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComprehensiveIncomeNoteTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ComprehensiveIncomeNoteTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Comprehensive Income (Loss) Note [Text Block]",
        "documentation": "The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r107",
      "r361",
      "r375"
     ]
    },
    "apt_statement-statement-note-13-leases-tables": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-13-leases-tables",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 13 - Leases"
       }
      }
     },
     "auth_ref": []
    },
    "apt_AlphaProTechEngineeredProductsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "AlphaProTechEngineeredProductsMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Alpha Pro Tech Engineered Products [Member]",
        "documentation": "Alpha ProTech Engineered Products [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TableTextBlock": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TableTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_TableTextBlock",
        "terseLabel": "Notes Tables"
       }
      }
     },
     "auth_ref": []
    },
    "apt_statement-statement-note-13-leases-future-minimum-lease-payment-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-13-leases-future-minimum-lease-payment-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 13 - Leases - Future Minimum Lease Payment (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Provision for income taxes",
        "terseLabel": "Provision for income taxes",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r78",
      "r82",
      "r135",
      "r136",
      "r167",
      "r281",
      "r291",
      "r378"
     ]
    },
    "apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_ComprehensiveIncomeNetOfTax",
        "totalLabel": "Comprehensive income",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r101",
      "r103",
      "r108",
      "r362",
      "r376"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r526"
     ]
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_EntityCurrentReportingStatus",
        "terseLabel": "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": []
    },
    "apt_IncentivePlan2020Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "IncentivePlan2020Member",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Incentive Plan 2020 [Member]",
        "documentation": "Represents the 2020 incentive plan."
       }
      }
     },
     "auth_ref": []
    },
    "apt_GainLossOnFixedAssetsNonoperating": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "GainLossOnFixedAssetsNonoperating",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Loss on fixed assets",
        "documentation": "Amount of realized and unrealized gain (loss) on fixed assets, operating activities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r49",
      "r50",
      "r51"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_EntityShellCompany",
        "terseLabel": "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": [
      "r527"
     ]
    },
    "us-gaap_IncreaseDecreaseInDueFromRelatedParties": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInDueFromRelatedParties",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_IncreaseDecreaseInDueFromRelatedParties",
        "negatedLabel": "Accounts receivable, related party",
        "documentation": "The increase (decrease) during the reporting period in receivables to be collected from other entities that could exert significant influence over the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "apt_HarmonyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "HarmonyMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Harmony [Member]",
        "documentation": "Information by name of investment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_IncreaseDecreaseInInventories",
        "negatedTerseLabel": "Inventories",
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_AreaOfRealEstateProperty": {
     "xbrltype": "areaItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AreaOfRealEstateProperty",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_AreaOfRealEstateProperty",
        "terseLabel": "Area of Real Estate Property (Square Foot)",
        "documentation": "Area of a real estate property."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts payable",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r514"
     ]
    },
    "us-gaap_RestructuringPlanAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringPlanAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring Plan [Axis]",
        "documentation": "Information by individual restructuring plan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisclosureTextBlockAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_DisclosureTextBlockAbstract",
        "terseLabel": "Notes to Financial Statements"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_EntityFilerCategory",
        "terseLabel": "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": [
      "r527"
     ]
    },
    "us-gaap_RestructuringPlanDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestructuringPlanDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring Plan [Domain]",
        "documentation": "Identification of the individual restructuring plans."
       }
      }
     },
     "auth_ref": []
    },
    "apt_InternationalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "InternationalMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "International Member",
        "documentation": "International [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent",
        "terseLabel": "Operating Lease, Weighted Average Discount Rate, Percent",
        "documentation": "Weighted average discount rate for operating lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r329",
      "r513"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_EntitySmallBusiness",
        "terseLabel": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r527"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r528"
     ]
    },
    "apt_ManufacturingBuildingProductsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "ManufacturingBuildingProductsMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Manufacturing Building Products [Member]",
        "documentation": "Indicates a facility used for manufacturing building products."
       }
      }
     },
     "auth_ref": []
    },
    "apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lawsuit With Defendants in Utah for Undelivered Equipment [Member]",
        "documentation": "Lawsuit With Defendants in Utah for Undelivered Equipment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedBonusesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedBonusesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commissions and bonuses payable and general accrued liabilities",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for incentive compensation awarded to employees and directors or earned by them based on the terms of one or more relevant arrangements. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    },
    "apt_statement-statement-note-10-activity-of-business-segments-tables": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-10-activity-of-business-segments-tables",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Activity of Business Segments"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders' equity:"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_EntityEmergingGrowthCompany",
        "terseLabel": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r527"
     ]
    },
    "apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Manufacturing Coated Material and Sewing Proprietary Disposable Protective Apparel [Member]",
        "documentation": "Indicates a facility used for manufacturing coated material and sewing proprietary disposable protective apparel."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting Disclosure [Text Block]",
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments."
       }
      }
     },
     "auth_ref": [
      "r155",
      "r156",
      "r157",
      "r158",
      "r159",
      "r171",
      "r176",
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r185",
      "r188"
     ]
    },
    "country_US": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "localname": "US",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "auth_ref": []
    },
    "apt_ManufacturingOfBuildingProductsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "ManufacturingOfBuildingProductsMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Manufacturing Of Building Products [Member]",
        "documentation": "Indicates a facility used for manufacturing of building products."
       }
      }
     },
     "auth_ref": []
    },
    "apt_MapleIndustriesAndAssociatesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "MapleIndustriesAndAssociatesMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maple Industries and Associates [Member]",
        "documentation": "Maple industries and associates [member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementTable",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r121",
      "r122",
      "r154",
      "r343",
      "r404",
      "r411",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r428",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r447",
      "r449",
      "r450",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r468",
      "r519"
     ]
    },
    "us-gaap_OperatingLeaseExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_OperatingLeaseExpense",
        "terseLabel": "Operating Lease, Expense",
        "documentation": "Amount of operating lease expense. Excludes sublease income."
       }
      }
     },
     "auth_ref": [
      "r593"
     ]
    },
    "apt_NoteToFinancialStatementDetailsTextual": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "NoteToFinancialStatementDetailsTextual",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note To Financial Statement Details Textual"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reconciliation of Assets from Segment to Consolidated [Table Text Block]",
        "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total assets from reportable segments to the entity's consolidated assets."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35"
     ]
    },
    "us-gaap_InvestmentTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentTypeAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment Type [Axis]",
        "documentation": "Information by type of investments."
       }
      }
     },
     "auth_ref": [
      "r412",
      "r414",
      "r415",
      "r417",
      "r419",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r518"
     ]
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryDisclosureTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Text Block]",
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory."
       }
      }
     },
     "auth_ref": [
      "r204"
     ]
    },
    "apt_NumberOfStoresOwned": {
     "xbrltype": "pureItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "NumberOfStoresOwned",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "apt_NumberOfStoresOwned",
        "terseLabel": "Number Of Stores Owned",
        "documentation": "Represents the number of stores owned."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reconciliation of Revenue from Segments to Consolidated [Table Text Block]",
        "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues."
       }
      }
     },
     "auth_ref": [
      "r33",
      "r35"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss."
       }
      }
     },
     "auth_ref": [
      "r30",
      "r31",
      "r32",
      "r37"
     ]
    },
    "us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital",
        "terseLabel": "Proceeds from Equity Method Investment, Distribution, Return of Capital",
        "documentation": "Amount of distribution received from equity method investee for return of investment, classified as investing activities. Excludes distribution for return on investment, classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r111",
      "r540"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
        "totalLabel": "Total future minimum lease payments",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease."
       }
      }
     },
     "auth_ref": [
      "r330"
     ]
    },
    "apt_NotesToFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "NotesToFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes To Financial Statements [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "apt_BuildingSupplyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "BuildingSupplyMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Building Supply [Member]",
        "documentation": "Building Supply [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding (in shares)",
        "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": []
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r22",
      "r86",
      "r104",
      "r105",
      "r106",
      "r120",
      "r121",
      "r122",
      "r126",
      "r134",
      "r136",
      "r154",
      "r199",
      "r202",
      "r235",
      "r274",
      "r275",
      "r276",
      "r285",
      "r286",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r305",
      "r307",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r331",
      "r396",
      "r397",
      "r398",
      "r410",
      "r468"
     ]
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_LiabilitiesCurrent",
        "totalLabel": "Total current liabilities",
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r91",
      "r115",
      "r197",
      "r222",
      "r223",
      "r225",
      "r226",
      "r227",
      "r229",
      "r231",
      "r233",
      "r234",
      "r296",
      "r297",
      "r298",
      "r313",
      "r514",
      "r562",
      "r596",
      "r597"
     ]
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_IncreaseDecreaseInPrepaidExpense",
        "negatedLabel": "Prepaid expenses",
        "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2024",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r330"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_CommonStockParOrStatedValuePerShare",
        "terseLabel": "Common Stock, Par or Stated Value Per Share (in dollars per share)",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r44"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r86",
      "r120",
      "r121",
      "r122",
      "r126",
      "r134",
      "r136",
      "r199",
      "r202",
      "r274",
      "r275",
      "r276",
      "r285",
      "r286",
      "r299",
      "r301",
      "r302",
      "r305",
      "r307",
      "r396",
      "r398",
      "r410",
      "r600"
     ]
    },
    "apt_NumberOfStoresRented": {
     "xbrltype": "pureItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "NumberOfStoresRented",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "apt_NumberOfStoresRented",
        "terseLabel": "Number Of Stores Rented",
        "documentation": "Represents the number of stores rented."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Component [Domain]",
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r86",
      "r104",
      "r105",
      "r106",
      "r120",
      "r121",
      "r122",
      "r126",
      "r134",
      "r136",
      "r154",
      "r199",
      "r202",
      "r235",
      "r274",
      "r275",
      "r276",
      "r285",
      "r286",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r305",
      "r307",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r331",
      "r396",
      "r397",
      "r398",
      "r410",
      "r468"
     ]
    },
    "apt_FinancialInformationAboutGeographicAreasTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "FinancialInformationAboutGeographicAreasTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Information about Geographic Areas [Text Block]",
        "documentation": "Entire disclosure for financial information about geographic areas."
       }
      }
     },
     "auth_ref": []
    },
    "apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "apt_OtherComprehensiveIncomeLossForeignCurrencyTranslationGainLossAdjustment",
        "terseLabel": "Other comprehensive income (loss)- foreign currency translation gain (loss)",
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity."
       }
      }
     },
     "auth_ref": []
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Axis]"
       }
      }
     },
     "auth_ref": [
      "r193",
      "r194",
      "r196"
     ]
    },
    "apt_OperatingLeaseExpenseNetOfAccretion": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "OperatingLeaseExpenseNetOfAccretion",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating lease expense, net of accretion",
        "documentation": "Represents the amount of operating lease expense, net of accretion during the period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block]",
        "documentation": "Tabular disclosure of information concerning material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r56"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r516",
      "r517",
      "r518",
      "r520",
      "r521",
      "r522",
      "r523",
      "r545",
      "r546",
      "r591",
      "r599",
      "r600"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2026",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r330"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOperatingLeaseLiability",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_IncreaseDecreaseInOperatingLeaseLiability",
        "terseLabel": "Lease liabilities",
        "documentation": "Amount of increase (decrease) in obligation for operating lease."
       }
      }
     },
     "auth_ref": [
      "r533",
      "r541"
     ]
    },
    "apt_ProceedsFromPaymentsForStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "ProceedsFromPaymentsForStockOptionsExercised",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from exercise of stock options",
        "documentation": "The cash inflow from or (outflow of) cash for stock options exercised during the period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Text Block]",
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information."
       }
      }
     },
     "auth_ref": [
      "r116",
      "r278",
      "r282",
      "r283",
      "r284",
      "r290",
      "r292",
      "r293",
      "r294",
      "r406"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued liabilities",
        "totalLabel": "Total accrued liabilities",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2025",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r330"
     ]
    },
    "apt_ExpenseToAcquireInventory": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "ExpenseToAcquireInventory",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "apt_ExpenseToAcquireInventory",
        "terseLabel": "Expense To Acquire Inventory",
        "documentation": "Purchases from our Joint venture."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Remaining nine months of 2023",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year."
       }
      }
     },
     "auth_ref": [
      "r594"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r96",
      "r191",
      "r203"
     ]
    },
    "apt_SewingProprietaryDisposableProtectiveApparelMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "SewingProprietaryDisposableProtectiveApparelMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sewing Proprietary Disposable Protective Apparel [Member]",
        "documentation": "Indicates a facility used for sewing proprietary disposable protective apparel."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]",
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position."
       }
      }
     },
     "auth_ref": [
      "r594"
     ]
    },
    "apt_The2004PlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "The2004PlanMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "The2004 Plan Member",
        "documentation": "Represents information regarding the 2004 plan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories",
        "totalLabel": "Inventory, Net",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r500",
      "r514"
     ]
    },
    "apt_DisposableProtectiveApparelMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "DisposableProtectiveApparelMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disposable Protective Apparel [Member]",
        "documentation": "Disposable Protective Apparel [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SubsequentEventsTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Text Block]",
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business."
       }
      }
     },
     "auth_ref": [
      "r341",
      "r342"
     ]
    },
    "apt_DepositPaidForEquipmentWriteoff": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "DepositPaidForEquipmentWriteoff",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "apt_DepositPaidForEquipmentWriteoff",
        "terseLabel": "Deposit Paid for Equipment, Write-off",
        "documentation": "Write-off amount of deposit paid for equipment."
       }
      }
     },
     "auth_ref": []
    },
    "country_IN": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "localname": "IN",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "INDIA"
       }
      }
     },
     "auth_ref": []
    },
    "apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "CumulativeEquityInIncomeOfUnconsolidatedAffiliate",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate",
        "terseLabel": "Cumulative Equity In Income Of Unconsolidated Affiliate",
        "documentation": "CumulativeEquityInIncomeOfUnconsolidatedAffiliate"
       }
      }
     },
     "auth_ref": []
    },
    "apt_TotalConsolidatedAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "TotalConsolidatedAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets",
        "documentation": "Total consolidated assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "AOCI Attributable to Parent [Member]",
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r8",
      "r25",
      "r300",
      "r303",
      "r331",
      "r396",
      "r397",
      "r537",
      "r538",
      "r539",
      "r545",
      "r546",
      "r547"
     ]
    },
    "us-gaap_IncomeLossFromEquityMethodInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromEquityMethodInvestments",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity in income (loss) of unconsolidated affiliate",
        "terseLabel": "Income (Loss) from Equity Method Investments",
        "negatedTerseLabel": "Equity in income of unconsolidated affiliate",
        "documentation": "Amount of income (loss) for proportionate share of equity method investee's income (loss)."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r54",
      "r76",
      "r166",
      "r192",
      "r373"
     ]
    },
    "apt_statement-statement-note-3-stockbased-compensation-tables": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-3-stockbased-compensation-tables",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 3 - Stock-based Compensation"
       }
      }
     },
     "auth_ref": []
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "EquityMethodInvesteeNameDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Domain]"
       }
      }
     },
     "auth_ref": [
      "r193",
      "r194",
      "r196"
     ]
    },
    "apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-3-stockedbased-compensation-stock-option-activity-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 3 - Stocked-based Compensation - Stock Option Activity (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PrepaidExpenseCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid expenses",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r98",
      "r205",
      "r206",
      "r501"
     ]
    },
    "us-gaap_RelatedPartyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party, Type [Domain]",
        "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests."
       }
      }
     },
     "auth_ref": [
      "r238",
      "r336",
      "r337",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r445",
      "r447",
      "r473"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "auth_ref": [
      "r186",
      "r187",
      "r413",
      "r416",
      "r418",
      "r475",
      "r476",
      "r478",
      "r481",
      "r486",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r498",
      "r511",
      "r518",
      "r564",
      "r598"
     ]
    },
    "srt_LitigationCaseAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "LitigationCaseAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Case [Axis]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant",
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable."
       }
      }
     },
     "auth_ref": [
      "r38"
     ]
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained earnings",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r72",
      "r370",
      "r399",
      "r403",
      "r405",
      "r429",
      "r514"
     ]
    },
    "srt_LitigationCaseTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "LitigationCaseTypeDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Case [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_EquityMethodInvestmentOwnershipPercentage",
        "terseLabel": "Equity Method Investment, Ownership Percentage",
        "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting."
       }
      }
     },
     "auth_ref": [
      "r193"
     ]
    },
    "us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityMethodInvestmentOtherThanTemporaryImpairment",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment",
        "terseLabel": "Equity Method Investment, Other than Temporary Impairment",
        "documentation": "This item represents an other than temporary decline in value that has been recognized against an investment accounted for under the equity method of accounting. The excess of the carrying amount over the fair value of the investment represents the amount of the write down which is or was reflected in earnings. The written down value is a new cost basis with the adjusted value of the investment becoming its new carrying value subject to the equity accounting method. Evidence of a loss in value might include, but would not necessarily be limited to, absence of an ability to recover the carrying amount of the investment or inability of the investee to sustain an earnings capacity which would justify the carrying amount of the investment."
       }
      }
     },
     "auth_ref": [
      "r551"
     ]
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_AssetsCurrent",
        "totalLabel": "Total current assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r90",
      "r99",
      "r115",
      "r197",
      "r222",
      "r223",
      "r225",
      "r226",
      "r227",
      "r229",
      "r231",
      "r233",
      "r234",
      "r295",
      "r297",
      "r313",
      "r514",
      "r562",
      "r563",
      "r596"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment",
        "negatedTerseLabel": "Purchases of property and equipment",
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets."
       }
      }
     },
     "auth_ref": [
      "r63"
     ]
    },
    "us-gaap_OperatingExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingExpenses",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_OperatingExpenses",
        "totalLabel": "Total operating expenses",
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "crdr": "credit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-based compensation expense",
        "negatedLabel": "Common stock repurchased and retired",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r41",
      "r240"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property and equipment, net",
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r364",
      "r372",
      "r514"
     ]
    },
    "apt_statement-statement-note-5-inventories-inventories-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-5-inventories-inventories-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 5 - Inventories - Inventories (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "apt_statement-statement-note-5-inventories-tables": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-5-inventories-tables",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 5 - Inventories"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of goods sold, excluding depreciation and amortization",
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities."
       }
      }
     },
     "auth_ref": [
      "r58",
      "r343"
     ]
    },
    "apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-7-accrued-liabilities-accrued-liabilities-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 7 - Accrued Liabilities - Accrued Liabilities (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
        "periodStartLabel": "Options outstanding, Options (in shares)",
        "periodEndLabel": "Options, Options (in shares)",
        "documentation": "Number of options outstanding, including both vested and non-vested options."
       }
      }
     },
     "auth_ref": [
      "r246",
      "r247"
     ]
    },
    "us-gaap_NumberOfOperatingSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NumberOfOperatingSegments",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_NumberOfOperatingSegments",
        "terseLabel": "Number of Operating Segments",
        "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues."
       }
      }
     },
     "auth_ref": [
      "r549"
     ]
    },
    "dei_DocumentInformationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentInformationTable",
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Information [Table]",
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package."
       }
      }
     },
     "auth_ref": []
    },
    "apt_statement-statement-note-7-accrued-liabilities-tables": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-7-accrued-liabilities-tables",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 7 - Accrued Liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
        "periodStartLabel": "Options outstanding, Weighted average price (in dollars per share)",
        "periodEndLabel": "Options outstanding, Weighted average price (in dollars per share)",
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r246",
      "r247"
     ]
    },
    "apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 8 - Basic and Diluted Earnings Per Common Share - Reconciliation of Net Income and Number of Shares Used in Computations of Basic and Diluted EPS (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Options exercisable, Options (in shares)",
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan."
       }
      }
     },
     "auth_ref": [
      "r248"
     ]
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Axis]",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r588",
      "r589",
      "r590"
     ]
    },
    "apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 8 - Basic and Diluted Earnings Per Common Share"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "crdr": "credit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Options exercised",
        "documentation": "Value of stock issued as a result of the exercise of stock options."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r22",
      "r72"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Options exercisable, Weighted average price (in dollars per share)",
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan."
       }
      }
     },
     "auth_ref": [
      "r248"
     ]
    },
    "us-gaap_OperatingExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingExpensesAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses:"
       }
      }
     },
     "auth_ref": []
    },
    "apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.alphaprotech.com/20230930",
     "localname": "statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r121",
      "r122",
      "r154",
      "r343",
      "r404",
      "r411",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r428",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r447",
      "r449",
      "r450",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r468",
      "r519"
     ]
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockRepurchasedAndRetiredDuringPeriodValue",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue",
        "negatedLabel": "Common stock repurchased and retired",
        "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r43",
      "r44",
      "r72"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate",
        "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term."
       }
      }
     },
     "auth_ref": [
      "r266"
     ]
    },
    "us-gaap_NumberOfStores": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NumberOfStores",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_NumberOfStores",
        "terseLabel": "Number of Stores",
        "documentation": "Represents the number of stores."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentInformationLineItems",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Information [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]"
       }
      }
     },
     "auth_ref": [
      "r186",
      "r187",
      "r413",
      "r416",
      "r418",
      "r475",
      "r476",
      "r478",
      "r481",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r498",
      "r511",
      "r518",
      "r564",
      "r598"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentType",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_DocumentType",
        "terseLabel": "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": []
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Granted, Weighted average price (in dollars per share)",
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options."
       }
      }
     },
     "auth_ref": [
      "r250"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Domain]",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268"
     ]
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic earnings per common share (in dollars per share)",
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r109",
      "r129",
      "r130",
      "r131",
      "r132",
      "r133",
      "r140",
      "r142",
      "r147",
      "r148",
      "r149",
      "r153",
      "r308",
      "r309",
      "r363",
      "r377",
      "r506"
     ]
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_DocumentQuarterlyReport",
        "terseLabel": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r529"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Exercised, Weighted average price (in dollars per share)",
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares."
       }
      }
     },
     "auth_ref": [
      "r251"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
     "crdr": "credit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total comprehensive income",
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r7",
      "r73"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Domain]",
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r588",
      "r589",
      "r590"
     ]
    },
    "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
        "negatedLabel": "Treasury Stock Acquired, Purchase Price Significantly in Excess of Current Fair Value, Description",
        "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Canceled/expired/forfeited, Options (in shares)",
        "documentation": "For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired."
       }
      }
     },
     "auth_ref": [
      "r571"
     ]
    },
    "us-gaap_RelatedPartyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party [Member]",
        "documentation": "Party related to reporting entity. Includes, but is not limited to, affiliate, entity for which investment is accounted for by equity method, trust for benefit of employees, and principal owner, management, and members of immediate family."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r118",
      "r336",
      "r337",
      "r338",
      "r339",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r445",
      "r447",
      "r473"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r257"
     ]
    },
    "us-gaap_FinanceLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FinanceLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_FinanceLeaseLiability",
        "terseLabel": "Finance Lease, Liability, Total",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease."
       }
      }
     },
     "auth_ref": [
      "r327",
      "r330"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268"
     ]
    },
    "us-gaap_NonrelatedPartyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NonrelatedPartyMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nonrelated Party [Member]",
        "documentation": "Party not related to reporting entity."
       }
      }
     },
     "auth_ref": [
      "r543",
      "r544"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_DocumentTransitionReport",
        "terseLabel": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r530"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
        "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total",
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r272"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Granted, Options (in shares)",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross",
        "documentation": "Gross number of share options (or share units) granted during the period."
       }
      }
     },
     "auth_ref": [
      "r250"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted earnings per common share (in dollars per share)",
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r109",
      "r129",
      "r130",
      "r131",
      "r132",
      "r133",
      "r142",
      "r147",
      "r148",
      "r149",
      "r153",
      "r308",
      "r309",
      "r363",
      "r377",
      "r506"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Options exercised (in shares)",
        "negatedLabel": "Exercised, Options (in shares)",
        "documentation": "Number of share options (or share units) exercised during the current period."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r43",
      "r44",
      "r72",
      "r251"
     ]
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transactions Disclosure [Text Block]",
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates."
       }
      }
     },
     "auth_ref": [
      "r333",
      "r334",
      "r335",
      "r337",
      "r340",
      "r407",
      "r408",
      "r409",
      "r451",
      "r452",
      "r453",
      "r471",
      "r472"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Canceled/expired/forfeited, Weighted average price (in dollars per share)",
        "documentation": "Weighted average price of options that were either forfeited or expired."
       }
      }
     },
     "auth_ref": [
      "r571"
     ]
    },
    "us-gaap_LossContingencyDamagesSoughtValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingencyDamagesSoughtValue",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_LossContingencyDamagesSoughtValue",
        "terseLabel": "Loss Contingency, Damages Sought, Value",
        "documentation": "The value (monetary amount) of the award the plaintiff seeks in the legal matter."
       }
      }
     },
     "auth_ref": [
      "r557",
      "r558",
      "r559"
     ]
    },
    "us-gaap_RestrictedStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedStockMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock [Member]",
        "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met."
       }
      }
     },
     "auth_ref": [
      "r29"
     ]
    },
    "us-gaap_IncomeLossAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossAttributableToParent",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_IncomeLossAttributableToParent",
        "totalLabel": "Income before provision for income taxes",
        "documentation": "Amount, before tax, of income (loss) attributable to parent. Includes, but is not limited to, income (loss) from continuing operations, discontinued operations and equity method investments."
       }
      }
     },
     "auth_ref": [
      "r59",
      "r106"
     ]
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_AllocatedShareBasedCompensationExpense",
        "terseLabel": "Share-Based Payment Arrangement, Expense",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r269",
      "r277"
     ]
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockRepurchasedAndRetiredDuringPeriodShares",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares",
        "negatedLabel": "Common stock repurchased and retired (in shares)",
        "documentation": "Number of shares that have been repurchased and retired during the period."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r43",
      "r44",
      "r72"
     ]
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_EntityInteractiveDataCurrent",
        "terseLabel": "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": [
      "r531"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r71",
      "r220",
      "r221",
      "r487",
      "r556"
     ]
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_IncomeLossAttributableToParent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_OperatingIncomeLoss",
        "totalLabel": "Income from operations",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r159",
      "r173",
      "r179",
      "r182",
      "r508"
     ]
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
        "negatedLabel": "Treasury stock excise tax",
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r110"
     ]
    },
    "us-gaap_ProceedsFromSaleOfProductiveAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleOfProductiveAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_ProceedsFromSaleOfProductiveAssets",
        "terseLabel": "Proceeds from Sale of Productive Assets",
        "documentation": "The cash inflow from the sale of property, plant and equipment (capital expenditures), software, and other intangible assets."
       }
      }
     },
     "auth_ref": [
      "r62"
     ]
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Accounting Policies [Text Block]",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r67",
      "r114"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
        "terseLabel": "Accounts payable and accrued liabilities",
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted weighted average common shares outstanding (in shares)",
        "totalLabel": "Diluted weighted average common shares outstanding (in shares)",
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period."
       }
      }
     },
     "auth_ref": [
      "r141",
      "r149"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Right-of-use assets",
        "terseLabel": "Operating Lease, Right-of-Use Asset",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r326"
     ]
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "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": []
    },
    "srt_ConsolidationItemsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ConsolidationItemsDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Domain]"
       }
      }
     },
     "auth_ref": [
      "r119",
      "r161",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r178",
      "r182",
      "r222",
      "r223",
      "r224",
      "r225",
      "r227",
      "r228",
      "r230",
      "r232",
      "r233",
      "r562",
      "r563"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_IncreaseDecreaseInAccountsReceivable",
        "negatedTerseLabel": "Accounts receivable, net",
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated other comprehensive loss",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r25",
      "r53",
      "r95",
      "r369",
      "r400",
      "r403"
     ]
    },
    "srt_ReportableGeographicalComponentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ReportableGeographicalComponentsMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reportable Geographical Components [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic weighted average common shares outstanding (in shares)",
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period."
       }
      }
     },
     "auth_ref": [
      "r140",
      "r149"
     ]
    },
    "srt_ConsolidationItemsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ConsolidationItemsAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Axis]"
       }
      }
     },
     "auth_ref": [
      "r119",
      "r161",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r178",
      "r182",
      "r222",
      "r223",
      "r224",
      "r225",
      "r227",
      "r228",
      "r230",
      "r232",
      "r233",
      "r562",
      "r563"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and cash equivalents",
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r92",
      "r499"
     ]
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "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": []
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finished goods",
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r503"
     ]
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryWorkInProcessNetOfReserves",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Work in process",
        "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r504"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
        "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)",
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r272"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "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": []
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryRawMaterialsNetOfReserves",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Raw materials",
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r505"
     ]
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeasesTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Leases [Text Block]",
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r325"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in operating assets and liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
        "totalLabel": "Increase (decrease) in cash and cash equivalents",
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r64"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Definite-lived intangible assets, net",
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r70",
      "r344"
     ]
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Add: dilutive effect of common stock options (in shares)",
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method."
       }
      }
     },
     "auth_ref": [
      "r143",
      "r144",
      "r145",
      "r149",
      "r241"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1",
        "terseLabel": "Operating Lease, Weighted Average Remaining Lease Term (Year)",
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r328",
      "r513"
     ]
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Goodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill",
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r93",
      "r207",
      "r360",
      "r509",
      "r514",
      "r554",
      "r555"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
        "periodStartLabel": "Cash and cash equivalents, beginning of the period",
        "periodEndLabel": "Cash and cash equivalents, end of the period",
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r64",
      "r113"
     ]
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]",
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r81",
      "r83",
      "r87",
      "r123",
      "r124",
      "r127",
      "r128",
      "r137",
      "r138",
      "r200",
      "r201",
      "r287",
      "r288",
      "r289",
      "r304",
      "r306",
      "r310",
      "r311",
      "r312",
      "r314",
      "r315",
      "r316",
      "r323",
      "r324",
      "r332",
      "r345",
      "r346",
      "r347",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Revenues",
        "label": "Net sales",
        "terseLabel": "Revenue from Contract with Customer, Including Assessed Tax",
        "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r161",
      "r172",
      "r177",
      "r178",
      "r184",
      "r186",
      "r188",
      "r236",
      "r237",
      "r343"
     ]
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Text Block]",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r139",
      "r150",
      "r151",
      "r152"
     ]
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "auth_ref": [
      "r184",
      "r343",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r497",
      "r510",
      "r515",
      "r534",
      "r560",
      "r561",
      "r564",
      "r598"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r548"
     ]
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance",
        "terseLabel": "Common Stock, Capital Shares Reserved for Future Issuance",
        "documentation": "Aggregate number of common shares reserved for future issuance."
       }
      }
     },
     "auth_ref": [
      "r21"
     ]
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred income tax liabilities, net",
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r279",
      "r280",
      "r366"
     ]
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 0.0
      },
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 4.0
      },
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net income",
        "totalLabel": "Net income",
        "terseLabel": "Income",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r66",
      "r77",
      "r89",
      "r100",
      "r102",
      "r106",
      "r115",
      "r125",
      "r129",
      "r130",
      "r131",
      "r132",
      "r135",
      "r136",
      "r146",
      "r159",
      "r173",
      "r179",
      "r182",
      "r197",
      "r222",
      "r223",
      "r225",
      "r226",
      "r227",
      "r229",
      "r231",
      "r233",
      "r234",
      "r309",
      "r313",
      "r374",
      "r448",
      "r466",
      "r467",
      "r508",
      "r524",
      "r562"
     ]
    },
    "us-gaap_EquityMethodInvestmentDividendsOrDistributions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityMethodInvestmentDividendsOrDistributions",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_EquityMethodInvestmentDividendsOrDistributions",
        "terseLabel": "Proceeds from Equity Method Investment, Distribution",
        "documentation": "Amount of distribution received from equity method investee for return on investment, classified as operating activities. Excludes distribution for return of investment, classified as investing activities."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r5",
      "r54",
      "r373"
     ]
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_DocumentPeriodEndDate",
        "terseLabel": "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": []
    },
    "us-gaap_CorporateNonSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CorporateNonSegmentMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Corporate, Non-Segment [Member]",
        "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r173",
      "r174",
      "r175",
      "r176",
      "r182",
      "r550"
     ]
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]"
       }
      }
     },
     "auth_ref": [
      "r184",
      "r343",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r497",
      "r510",
      "r515",
      "r534",
      "r560",
      "r561",
      "r564",
      "r598"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_StockholdersEquity",
        "totalLabel": "Total shareholders' equity",
        "periodStartLabel": "Balance",
        "periodEndLabel": "Balance",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r46",
      "r47",
      "r68",
      "r430",
      "r446",
      "r469",
      "r470",
      "r514",
      "r525",
      "r542",
      "r553",
      "r592",
      "r600"
     ]
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and contingincies",
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r42",
      "r367",
      "r427"
     ]
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_Liabilities",
        "totalLabel": "Total liabilities",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r115",
      "r197",
      "r222",
      "r223",
      "r225",
      "r226",
      "r227",
      "r229",
      "r231",
      "r233",
      "r234",
      "r296",
      "r297",
      "r298",
      "r313",
      "r426",
      "r507",
      "r525",
      "r562",
      "r596",
      "r597"
     ]
    },
    "us-gaap_InvestmentTypeCategorizationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentTypeCategorizationMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments [Domain]",
        "documentation": "Asset obtained to generate income or appreciate in value."
       }
      }
     },
     "auth_ref": [
      "r412",
      "r414",
      "r415",
      "r417",
      "r419",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485",
      "r518"
     ]
    },
    "us-gaap_EquityMethodInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityMethodInvestments",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_EquityMethodInvestments",
        "terseLabel": "Equity Method Investments",
        "documentation": "This item represents the carrying amount on the entity's balance sheet of its investment in common stock of an equity method investee. This is not an indicator of the fair value of the investment, rather it is the initial cost adjusted for the entity's share of earnings and losses of the investee, adjusted for any distributions (dividends) and other than temporary impairment (OTTI) losses recognized."
       }
      }
     },
     "auth_ref": [
      "r169",
      "r192",
      "r535",
      "r552"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_CommonStockSharesAuthorized",
        "terseLabel": "Common Stock, Shares Authorized (in shares)",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r428"
     ]
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_PaymentsForRepurchaseOfCommonStock",
        "negatedLabel": "Repurchase of common stock",
        "documentation": "The cash outflow to reacquire common stock during the period."
       }
      }
     },
     "auth_ref": [
      "r27"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, $.01 par value: 50,000,000 shares authorized; 11,636,446 and 12,226,306 shares outstanding as of September 30, 2023 and December 31, 2022, respectively",
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r368",
      "r514"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income to net cash provided by operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Shares, Outstanding (in shares)",
        "periodStartLabel": "Balance (in shares)",
        "periodEndLabel": "Balance (in shares)",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r44",
      "r428",
      "r446",
      "r600",
      "r601"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedSalariesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedSalariesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details": {
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payroll expenses and taxes payable",
        "documentation": "Carrying value as of the balance sheet date of the obligations incurred through that date and payable for employees' services provided. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r502"
     ]
    },
    "us-gaap_SegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments [Domain]",
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r156",
      "r159",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r169",
      "r170",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r180",
      "r182",
      "r188",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r218",
      "r219",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r509",
      "r534",
      "r598"
     ]
    },
    "us-gaap_EquityMethodInvestmentsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityMethodInvestmentsDisclosureTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Method Investments and Joint Ventures Disclosure [Text Block]",
        "documentation": "The entire disclosure for equity method investments and joint ventures. Equity method investments are investments that give the investor the ability to exercise significant influence over the operating and financial policies of an investee. Joint ventures are entities owned and operated by a small group of businesses as a separate and specific business or project for the mutual benefit of the members of the group."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r195",
      "r198",
      "r532"
     ]
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]",
        "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period."
       }
      }
     },
     "auth_ref": [
      "r16"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_LiabilitiesAndStockholdersEquity",
        "totalLabel": "Total liabilities and shareholders' equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r48",
      "r75",
      "r371",
      "r514",
      "r542",
      "r553",
      "r592"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]",
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r11",
      "r39"
     ]
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation and amortization",
        "terseLabel": "Depreciation and amortization",
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r164"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts receivable, net of allowance for doubtful accounts",
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current."
       }
      }
     },
     "auth_ref": [
      "r189",
      "r190"
     ]
    },
    "us-gaap_OperatingSegmentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingSegmentsMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Segments [Member]",
        "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r182"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_EntityRegistrantName",
        "terseLabel": "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": [
      "r527"
     ]
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NonoperatingIncomeExpenseAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income (loss):"
       }
      }
     },
     "auth_ref": []
    },
    "dei_LegalEntityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LegalEntityAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information",
      "http://www.alphaprotech.com/20230930/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Entity [Axis]",
        "documentation": "The set of legal entities associated with a report."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCountry": {
     "xbrltype": "countryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCountry",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Country",
        "documentation": "ISO 3166-1 alpha-2 country code."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement [Text Block]",
        "documentation": "The entire disclosure for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r239",
      "r242",
      "r270",
      "r271",
      "r273",
      "r512"
     ]
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementBusinessSegmentsAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments [Axis]",
        "documentation": "Information by business segments."
       }
      }
     },
     "auth_ref": [
      "r88",
      "r156",
      "r159",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r169",
      "r170",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r180",
      "r182",
      "r188",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r509",
      "r534",
      "r598"
     ]
    },
    "dei_EntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information",
      "http://www.alphaprotech.com/20230930/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230930/role/statement-note-15-contingencies-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230930/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-inventories-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-reconciliation-of-net-income-and-number-of-shares-used-in-computations-of-basic-and-diluted-eps-details",
      "http://www.alphaprotech.com/20230930/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity [Domain]",
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NoncurrentAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NoncurrentAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Long-lived assets",
        "label": "us-gaap_NoncurrentAssets",
        "documentation": "Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r187"
     ]
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_IncomeLossAttributableToParent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_NonoperatingIncomeExpense",
        "totalLabel": "Total other income (loss)",
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)."
       }
      }
     },
     "auth_ref": [
      "r61"
     ]
    },
    "us-gaap_NatureOfOperations": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NatureOfOperations",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-1-the-company"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nature of Operations [Text Block]",
        "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward."
       }
      }
     },
     "auth_ref": [
      "r79",
      "r84"
     ]
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230930/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Option [Member]",
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
        "negatedLabel": "Less imputed interest",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease."
       }
      }
     },
     "auth_ref": [
      "r330"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows From Operating Activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity investment in unconsolidated affiliate",
        "documentation": "Amount of investment in equity method investee and investment in and advance to affiliate."
       }
      }
     },
     "auth_ref": [
      "r536"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "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": [
      "r527"
     ]
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_Assets",
        "totalLabel": "Total assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r94",
      "r115",
      "r159",
      "r174",
      "r180",
      "r197",
      "r222",
      "r223",
      "r225",
      "r226",
      "r227",
      "r229",
      "r231",
      "r233",
      "r234",
      "r295",
      "r297",
      "r313",
      "r365",
      "r440",
      "r514",
      "r525",
      "r562",
      "r563",
      "r596"
     ]
    },
    "country_CA": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "localname": "CA",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230930/role/statement-note-11-financial-information-about-geographic-areas-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CANADA"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_EntityFileNumber",
        "terseLabel": "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": []
    },
    "us-gaap_OperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230930/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total lease liabilities",
        "terseLabel": "Operating Lease, Liability, Total",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease."
       }
      }
     },
     "auth_ref": [
      "r327"
     ]
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party, Type [Axis]",
        "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests."
       }
      }
     },
     "auth_ref": [
      "r238",
      "r336",
      "r337",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r445",
      "r447",
      "r473",
      "r595"
     ]
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityMethodInvestmentAggregateCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityMethodInvestmentAggregateCost",
     "crdr": "debit",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_EquityMethodInvestmentAggregateCost",
        "terseLabel": "Equity Method Investment, Aggregate Cost",
        "documentation": "This element represents the aggregate cost of investments accounted for under the equity method of accounting."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease liabilities",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r327"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_CityAreaCode",
        "terseLabel": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
        "totalLabel": "Net cash used in financing activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r112"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows From Financing Activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
        "totalLabel": "Net cash used in investing activities",
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r112"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "dei_LocalPhoneNumber",
        "terseLabel": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "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": [
      "r527"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows From Investing Activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LegalEntityTypeOfCounterpartyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LegalEntityTypeOfCounterpartyDomain",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Entity Type of Counterparty [Domain]",
        "documentation": "Nature of the other party participating in a financial transaction."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
        "totalLabel": "Net cash provided by operating activities",
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r65",
      "r66"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-document-and-entity-information"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestIncomeExpenseNonoperatingNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestIncomeExpenseNonoperatingNet",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest income, net",
        "documentation": "The net amount of nonoperating interest income (expense)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis",
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230930/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Legal Entity of Counterparty, Type [Axis]",
        "documentation": "Information by legal entity of counterparty. A counterparty is the other party that participates in a financial transaction."
       }
      }
     },
     "auth_ref": [
      "r23"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.alphaprotech.com/20230930/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease liabilities, net of current portion",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r327"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-20"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "21D",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-21D"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(3)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c),(3)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "SubTopic": "10",
   "Topic": "280",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.12)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(a),20,24)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.21)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.25)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.3,4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "210",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03.17)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//220/tableOfContent"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//235/tableOfContent"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 4.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//440/tableOfContent"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19"
  },
  "r74": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r75": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r76": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(13)(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r78": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2"
  },
  "r79": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r80": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "SubTopic": "20",
   "Topic": "310",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2"
  },
  "r81": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "SubTopic": "20",
   "Topic": "310",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2"
  },
  "r82": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r83": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//250/tableOfContent"
  },
  "r84": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//275/tableOfContent"
  },
  "r85": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "323",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//323/tableOfContent"
  },
  "r86": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r87": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r88": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1"
  },
  "r89": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7"
  },
  "r90": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r91": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5"
  },
  "r92": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r93": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r94": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r95": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r96": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r97": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r98": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r99": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r100": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A"
  },
  "r101": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A"
  },
  "r102": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B"
  },
  "r103": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B"
  },
  "r104": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4"
  },
  "r105": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5"
  },
  "r106": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6"
  },
  "r107": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r108": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r109": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r110": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r111": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-21D"
  },
  "r112": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24"
  },
  "r113": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8"
  },
  "r114": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1"
  },
  "r115": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r116": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r117": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r118": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(k)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r119": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3"
  },
  "r120": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23"
  },
  "r121": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24"
  },
  "r122": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5"
  },
  "r123": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r124": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r125": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r126": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r127": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1"
  },
  "r129": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11"
  },
  "r130": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11"
  },
  "r131": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3"
  },
  "r132": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4"
  },
  "r133": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7"
  },
  "r134": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7"
  },
  "r135": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8"
  },
  "r136": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9"
  },
  "r137": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5"
  },
  "r138": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-6"
  },
  "r139": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//260/tableOfContent"
  },
  "r140": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10"
  },
  "r141": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16"
  },
  "r142": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2"
  },
  "r143": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22"
  },
  "r144": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23"
  },
  "r145": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A"
  },
  "r146": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B"
  },
  "r147": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B"
  },
  "r148": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r150": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r151": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15"
  },
  "r154": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//280/tableOfContent"
  },
  "r156": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21"
  },
  "r159": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r161": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r163": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r164": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r165": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r167": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r168": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r169": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "34",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40"
  },
  "r185": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r186": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481664/323-10-45-1"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r195": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r196": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r201": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//330/tableOfContent"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(n)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//718/tableOfContent"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r263": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r264": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//740/tableOfContent"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 11.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//842-20/tableOfContent"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//850/tableOfContent"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-6"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//855/tableOfContent"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "924",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 11.L)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2"
  },
  "r348": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15"
  },
  "r349": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15"
  },
  "r350": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20"
  },
  "r351": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "33",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33"
  },
  "r355": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "33",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33"
  },
  "r356": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "35A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "35A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column J))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column K))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-2"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-5"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-6"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r421": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r423": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3"
  },
  "r448": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7"
  },
  "r449": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(g)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5D",
   "Subparagraph": "(SX 210.12-13D(Column B)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5D"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5D",
   "Subparagraph": "(SX 210.12-13D(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5D"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(a)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(b)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-8"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r506": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "52",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "53",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r517": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r518": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r530": {
   "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"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "323",
   "SubTopic": "740",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481543/323-740-50-2"
  },
  "r533": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(1)",
   "SubTopic": "20",
   "Topic": "842",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4"
  },
  "r534": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4H",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H"
  },
  "r535": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r536": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r537": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4"
  },
  "r538": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5"
  },
  "r539": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6"
  },
  "r540": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r541": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28"
  },
  "r542": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r543": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r544": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(k)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r545": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23"
  },
  "r546": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24"
  },
  "r547": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5"
  },
  "r548": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r549": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18"
  },
  "r550": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r551": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481664/323-10-45-1"
  },
  "r552": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r553": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3"
  },
  "r554": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r555": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r556": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//450/tableOfContent"
  },
  "r557": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1"
  },
  "r558": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4"
  },
  "r559": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9"
  },
  "r560": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9"
  },
  "r561": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1"
  },
  "r562": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r563": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r564": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5"
  },
  "r565": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r566": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r567": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r568": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r569": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r570": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r571": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r572": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r573": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r574": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r575": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r576": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r577": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r578": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r579": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r580": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r581": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r582": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r583": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r584": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r585": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r586": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r587": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r588": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r589": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r590": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r591": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1"
  },
  "r592": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28"
  },
  "r593": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4"
  },
  "r594": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6"
  },
  "r595": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3"
  },
  "r596": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7"
  },
  "r597": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7"
  },
  "r598": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B"
  },
  "r599": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4"
  },
  "r600": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r601": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>65
<FILENAME>0001437749-23-030902-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001437749-23-030902-xbrl.zip
M4$L#!!0    (  %V:%?O?@W."@X  !&C   0    87!T+3(P,C,P.3,P+GAS
M9.U=6W.C.A)^WZK]#UJ_[-FJ);[D-DY-YI1SFTU59I**G3KG[90,LLTNEA@D
M)LF_WY:X&##8@)7$'O.28-VZ6_VIU=T(^/S[R]Q!/XG';4;/6]V#3@L1:C++
MIM/SUM/0& PO;V];B M,+>PP2LY;E+5^__+WOWW^AV%\)91X6! +C5_1:.93
MBWA7;$[0GQ>/=\A G=.SWNG#-_0TND2]3N_0Z':-SB?#^/+YA5MGW)R1.4;
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
M.\DV777]A66YM*TXU&(D@M$$HPE&$XPF&$TP^G!A=.L-<@A\K*]V&?*,13&
M3B V9T\ONFUE3\VP2$I\&JEK<6O+>3*%IX/E=!6S!'Y]K[V4I::ERY9?2<GM
M@G]\__Y'-;J6!FT;'" ?%S5D<NP!Q4E</(B'U9763A_5GSJ@Z];9+U\/3(:J
M.GK%W!O;>*7RN#C$5I2S.V:K*&-Q,9/I-4^YO.?AF9!G.>Q%_#Q-<P;*1L-)
MXW&\<GL*^X58<WX#-$537BTT7T5RSU.0J>+MI+<B*V^!W_Y^+-+LJ\C^SC,5
M[IXGT;] QU?/2N_/.XS9N^(R$DI$-E^I=A]\3ZF1B&'F^;G(9.7>:]W>*_4*
M!GQE2Y/:JVHR"(V5.[:Y$78Z![V]"[1])J.IVH^5+!JEUMC6/]7Y5%E<R5S-
MID%TC6V'I=HH)#6MQT?YH')>O>M,I&3)O# <C];/3:[86GU5;$7J+J!L?9XH
MEHI,P,MLP>7M@B6;8L*_R_(:H7(WTKEW/3]^''-[QB+Y-Q;G? (0<UGRHPP
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
M>D#*KZ/Y(KN<?4MYH>"MZ-?T&9"+/[@BB8>3>_AVSD^BM+"YKT')7@$:W<%
M1L;LA\'#ZS57NG#[XRV7RP]->#4,0SYC\AEKS9F1^QW)U"13$YG)Y;#7CM2H
MM$)#EKQ]0L:;!:ZVY.Q'9)Q98&]+SCZCYLP5&%DR_=.8F*Y%OL-Z?F9YEDL>
M+.&)RWQ9?ANLV+IHVRRUM]'8 _F(W$DDQQ$YC@Q&S(7R67/-MGQ5"E9ZDNO,
M&]?N*'G["FOD]H'']_P+0-N%SNQL.QQ*WO_.F;R%9[9]P:_&P<OM@^B"U^=1
M\'%: A? 'I>S,]C.6:PH;L.T<4 \_']+P@UZX>'IXQ2:3I;J4Q/6Z\8BES,Y
M]<BI1TX]<NJ14\_(4E<;[$@]?MV@YI&Z!%LARI$Z"UM:#"-U)#8SA$?J0.P
M.%MR_C,RSAWC%QX]I)_5Z7M%&4^F4>L4.<O1_'I!G8AJ42S@A*]$&F57+ K/
MA#S=7FOUAXPR+F:S/:/ H8>+)5-)V05[2/.HR#\]X3/@CX%6.4^^96P!SX65
MQU6-!0D+;TN"MM9!VZ%P^'-Q4?-]>)=KCA1?P+*?%V<2CD%%:LX2ZQMYIN\6
M'J<]IUW7= RT#GIKCKHT\_A)9Z]/V)+->7HC\ODB^QN+]6$%VW[DRR)?%DI?
M5OVA7X,*%"[J9W0^.AO]C^IT9>U[$%U"*E0>RG:"BN&L)3F5R:E\@$YE-X T
M,M^QLTE=[W'9?*_^N0,=!=_\?U!+ P04    "  !=FA7JU]=8\,\  #F10,
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
M136G7TX)Y8K1DY18T<ECI^CJ;>RNCM"G0\"=G_=3^5#(."Q@<5P_5 'U<#N
M3'\,UHNZ9:>)"4W\A0YW*ND#9LB46.3M7+X6F&91>E[F!5ECRH,D7#FZX;J1
MO+4_; ^D,\51/N,^-UW]C'N T&"A,\1<G\P:<YXY5N$NT\EJY-$.>^$C%6JN
M6$"573;AS7P/!+]8!?HBUH%"5_]X8!GBGP_&GQT@,Z;O%E7ONN<H2?EZK@@5
M;2Z&3@HP!.<[%T"#UNC+2C3X>ZVB&)R685Z9E<L0KPA4+2KKE8A"7@.ZCBT7
MP_3L#9&"8<4$O5ZT_!1EY2*:%R5-LN4YX6VX/K'_0Q,FGGF&Z0O[^9Z2#=-I
MBXANC=\IKXZ#2Q" -S2'1L6U9#O %TF$48UQE;C\(J)8>Z31$$_<CY%TL*=
MK[.8Z1H%CWTCAC]/G-RB,J\:"JP/"#R7!%XW"9Q+ F\:!([W!-[L"1S)U7WO
M_8E19^>+^-CY7M)K$/GD50*-3\9XDR!?JXP8OP3H?\9]G>+>EEIE<')[\YQD
M(@7B+TFQJFW.ZVR>EKR4E=N;[/_%L^A5883UF EH7P$@>HKJU68\Q-+QLBH[
MD7:+"Y1'Z8C7 S#*#MQ6-6;HA:&V\UU-T X[5*.'&'Y!#*T^YXL,N!W#F4<?
MRB2-I9@4)7AF%D_W5WV-F/;9_=HE-0YU36X^C)$QU-+<VPU/-0$V%:J!C0 -
MR[7I]2;$]I==*%TA^8R<S?]1)I3K(!M,B^T]VZ*"5Z.P7S?KCI1#ZPF@>8C&
M@+QEZ!IC!$K:=;'>G^1Z,[SDMN4,T"& _;X2;=C(0NCI'"-AO6.SQ;K*U;1G
M0]*?UAX#^7,JW)A16O4SE.[*HJ#)4UF(P XY=7 V.@,KP_]#30Q.&NB+@/LW
M2>.?F1F:EL+RQ(L%,]$X]\\;3P0C,I+ZQP'WD[C;I.$4Q;L%3%74?==7653-
M[U==O%NXTAB'6Y][G9&=U;&IC5KV:U,<S6CNT3\D'QQ.Q,[=+63>@6BT(]/@
M9H29D3E)DU@J&]VI.'VG WN*8&!='^1#O#@/2\RJUDP2-_X6=A.[L>3(]-Y+
M,O0&^6OC?-(V7E.\J/\ VKY9.;'S1A$27+-]2IB'V UH2^P)%DS"-AQT%>_G
M_62L_80#25ESP/[E[('WM\;N:Y&T@!WMD+70;?)K%S.3XP++_[W.#INLUT=Z
MVV7^VGS?Q\HU@>/+=V6,$"R[WMEJ =$< 3)X*R][3CNVO^T)ZJ_I1U<UYB U
MF'ZK%^&-7,'-6L%/+(4KKU0750Y?2FD3TF!44E2W=PV!AB4:4SGOBL#^%:S\
MO)-VQ(0@WCF@M4:R>U!/+O#43G?/!R%*(C44;.&%H$60M[@XC_+5/27/28SC
M#]O/.8X;-^@9S[@2BH'&4H=/!&T\8 W0?0O(?(6N4O*2(VX4-!YGVN,2QM3O
ML3ED.(I[8^K+]28E6XRKQM3MY0^W1+;MB$6E0RX4AN;?STE>W)+BK[C@AM\R
M2W[#JN:JSN$!CX@SO'RIFLX6 -%>1T3-GK54NQJI?0QR@G:8UZ53'%7V:X&V
MN$![;"?H;,V;EDV06%P0>>;^P!'O^^Y-.AY:QU5?+H5DZQP+E$JM<_J2**W
M(=)@H%4 3O+1FX\39+0*1R>QFT&(%;V^?OU -J2^(K3ZB8][YUMIZ$1B;)I$
M*[)?O7K1NJI1Z1P#T3VL(B(7(9):&LM W_X51S1,AEF@0^U#6S'@F "M<*K(
MVP/>$,IOE^N,<<-:+.+#MLZ!,.YS YJM=Q,;*Z@^.]34B30[S% #-=&)IAXQ
MDH!OWYUL[2W38WO\'8BZ#]]-DN%K]I\JY[YZ()2-3R9TSJ$U1/2%PT0":"!^
M4U.3F)/(7R0R3<D+?Z>&2?$+4CX5BS*M7]!F4ATGSP9OG4/F@,8U;6 YSW2O
M7T;?0YZ@'89""3FG.$X*=$/RG&DM$JTPP4?0)I%!*._S,8TC?+B#6O>DAO83
M^,,:RJF]L29ML&:&12%&=,"A<;67_!$W\4FH=S?TVT @M/47-ZLZ(^W<&G4*
MF"H\IAL/C8*IYO76RUJ% *@A]W"K 5BF^UYA>Q>;V6I<A>VT3$.L:><OUYO=
M@KQ2GF&"L_GV(EI'2YP_DG*Y*GZ)TE+E<C;^#IKYK9O?U\G1(@(Y00Y6!\DJ
M9%B@!AH35"&")"839+! 5VGOQOQ%P&3U=L@NDGR>DKRDS$YM.G ><,HSD+D?
M)S\I/<QU#I&!9@4>T)[0G9N?W?Y+]"6T$V2HW2..ML2G@5"N2X'A7;'"E&-.
M\8HAGSSCZVQ.UKBU'A;\/=QT,(/CW(ZX.[]&S;IE7MAQ'XER);/"6'<&@^5.
MD-[D]<>F\=]*^:A07IVG&9E%K[R[T(J(BE9FA+?[\56,VW]&*"O#(7M+7X>C
M",IY]T*1P]8E=LK:C%=-E'2+'D6SAJK)!P^O5>U,T#U-YA@])LLL623S*"O2
M+4HR=/DZQ[GH=5+7-%Y%"96J'=/X<#ZGR49/-U<R8X!#0!SLH\>8 -M.CAO3
MW^5S99H47OT'X!B!:F(OREH%^5]$%YYB&R8%UX"XQ)YB/A^7([5C0=Z9W8EC
MVO'PY^;:Y_7X=EL[ L 'Z(9:#;A&BG"=B(ES#AU]R[3\0,UY]!Q#K GG3]8>
MQ8CW!I,V^<#\2ZCTU4-PW]OY.)%@CT1X@]EF"T@/NH[G&9E<]>"#^#\SAN=9
M%AL5BKD$Y>KY& !*SBUO#AEQT&&KUIQNI\V+)+WWR&<%G;R!N(]8I0VUC8'7
MO>WG\M'!6JH&(/6F'ZH E28LOO:!DFL#7-W5!+;P)#&BAC_?V.ZTJ^O56\=
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
M71.-?T$2D1%)/H.=:!>!IN3UR)H,H8=]<>!9%C_(TL"+DK(3(ZO=N@I< 3.
MV=08DJ]HB 5*D(B(FQ7_4Q:50MB0#$#ID9U4>>7U.JJ'4S@]JQ+4N ZKQ,G=
M:;5>L^OC&CS5 ,26UF>WC>Z>6S;M% &-SJ<9W:M)T\FLKD]?5=+92$@.J\;I
MB'O2K$A#,7\7P'R%XS+%=XO3Z*7(GM;%Q.TG@ I_8T#.C8H*$VY3M 6\97(\
M"AWK!NP,Z4]NC]+O&<OF&S,&LNI5F_PF2E<_X9;J8_L/P3)1!\"]>*PQ"-SZ
MT(+6!$[ @*E]'-6,<8=-0E_+-X.E\37F#I>\UT!BF)0]V*IZMSTQ7H>WM+PV
MUNE,QE-2SI%C?$8C[A-]W*Z?2'IT(I1_![B[#^9QS>D5,"2A>7=:M].,: D1
MZ"KN:$>M'CC(5>NC&'8/,?B#V!W45%ZF :MC;Z.BI$R?O-M@*JYRY6-$RH%
M+CF=T#672(C<0-C##)_]VD%88DXM5P7T;%?3^Q7)L+)WD&H(I(3^:"H?+3Z.
M8=JV]^B/,Z"UAP"*!-10S8R4VTY,Z.+7EWZ=YV6;BU#\\6XCCM/E*Z;S)%>6
M4<(GZN-7MP+H^KA4\!"N ?9M[.QTB7V<Z3MX$U0O>A2N<QC_'3O0>U#<V[DU
M<G,.ZLKTZZYLAPHY1'WQACR02 J<(P$XC VN]Y2.PAOZP'1\6LX+>=(8"3NL
ML,ZQ0)9NG=,U9Q\ 11QJ2'.LFZS$BE;A^*;S(2#-Z*%XQT_[LC;N">DKUQ&W
MBX."/AVDN.E%7LL >J]^GF'57C4\[UKOF-0_@VW0:W^FM/7GE,(O52$OQY&2
MC/WG',M'V;+X?,6V!^>[3N%B3)+-DPU31W0JXY!30QU? Z#@J8Z\>A<RBR,:
MY^CS)N8U+SRA2&*)F$W4&+G#<P1.M2&WF;C<.X]*Q:[UPW9&HRR/YN*P?]@V
M_]*IH=I. %8]3 &YUT9D$Q !<!(\M@#8 =*?K$$X5*/QJ@8.P'&^]-P6S@JK
MZ"IIJN"AL.HM3METRX\XPS1*>9^/>)UDHGUTD3SC2_DFE$JGM?H8JL@: 7&>
M%B>QF*"EQ$/<WM$!)H&>7[7: M*/KAXUUX+7/HK2VAC''[:?F19]G54=)+/E
M&1.YSR)=3Y,8#)\(K)7: G3-NHU*6-ZZ"NU007M<?@ZD78(WAPQ'<7^RMNHU
M</A:VAFE7-L5+V=O]T/NHZW(H'YA)D-E3G[D+?V95BRMS8^4Y,JR%7>0H%)\
M>(Q<GQL!$A2Z&C$) %$*@=148(6:F*,&ZNAIBYKC*O21P']'P0F2:^#VKEP%
M_X6M(\S5Z?"0$(_;[C43CJ=;;A^BET],?:5)E.9,^MXM'G".Z7-'EK#IASTR
MY;H!.+=#HA>TKB$'2Y@S)#*!4\X;L['K?(YQG'.51=9]?\+%BL3[C+^+A-_W
M69S?T0NNMO*GT?F!><!%23/>/$.\4:K@R<'G![+N8'CXBK0/AC#D#@U(+<#-
M66.+^$FM>S)(A-$>XPEJ(CI!$E/9P\: 4([$R?#G@SC?1F_"J5$NQ@SGTQ85
M"IEC^AE0E.BF]R4A='A #O[P:RL(XQ^[\SSCGZ"T40W)O4#")-AU7L$&2W1T
M9(W9BT#IZE_5O.(NJ16./Q(2V^F:^B_[*IMJ"*Y/6@T9+3GHL.JF 9W;]$U3
MXOEGN;\0^G=F;O$K*K=C.?V7?5E.#<$URW'(W&[?2-AA><Z T&T\9TJ]7D4@
M<]G86+)<]8\]MU4__,I(>KC5IW^PY)7]!*Y9X?/M]>SR CW.SF:7CUX9H85(
M1+UR;Z+CG- -H<QZOB79(UYR_;6S2%\['B@FE/,Z#S'4@">(@9Y6L-$7"3U,
M(%9/9&)-.8\A_")*,AS7G8K/YO-R78J8\05>)/-$%>\R_Q <XM<!<!_REQCL
MFE('BO,;$YK J>>-X1J(W!4K3+FOFEDU.,N39RR[^MR0ZM*<1:\*[@/. F1%
M2V@><OUJ=!#A^/!&Z7N$4*H-= 1:)L"SU5RK0 H=8(6J%E;?<L2^8Y<"%CU*
M&7:A'L8!L249:!-,3W'$EL%/YMN?WK\5IY/]\&L7N"M"<;+,SDM*<3:7V6BI
MB"]]9&*&CSB+_U9*C]K1D74QM>4Y'A(%UX=[2%QMA$!8&@$DPUV+Y$LJ:< E
MX'=3M) XHWF%-"KV6*,E0[L:^?70*29,.K OQ83F0G3-#1<4+1B941&]5BTF
MYVF4YPE3!B1!HAU>.9>A#?H@]M=.6C8^G2A&5KFK*,8Y^Z.0YQP+O%A@GC:#
M490CS$0L62=SM,+Q$@LL(I0QD9[LVX4PI*(=""R;I?.)$F:91=/JAVX4BE7$
MB"$;2T3LMLR64T:8];0!)1/=&R8H*F1$0+2B*PA_7)#_68+YWNL=XT2.$I<,
MW>LV8@AP*C]C7IC%_OJVU= U& FX*Q0S>FC'*<'*,CH.V-"R=;@$F,1YP(R5
M<B%*&&O)I22[Y6W86/^'1\<GQ()R 7OE50UELF45F=0WK+6<8+ N>BI SIU$
MLJJ'7Q6D1H%=+SDN9!RM$5<+DXX*V)/.]G1FA/9;R6H2IAX\,!TN%#U,\#EH
MN-D^O.QN$1O9Y:2(:&&WE \1^Z?N;2_7>%]FENUKC+!V6:BL#=^/)F#?\ABP
MY@8T^ (H;CIF]B5W.E" G(%!5P1N5,,,K:JH@HFE78_W,.YW$^XA  )Z.S [
MY>"&*PMU&L[VEBU=F'2J8V/\'?#P:.=W?80$W*8R.!&^!K*HW 8%VA#*K9X@
M?&=.?@*FJ?^4EXY7X4_,"?TG?9-<M _+N[#Q*]AH#SQ\]P4C8K<ENF@IZ,_H
MV+VTL$-.NJP*RP<XS#Z'&BB&8'P^OK'#9((J7,;W]H;AIK2^O&%#:8\V<J75
MG',G?/7Z8$<O#^UXL,6LF->YDX;#V[TG&;))AYZT;0]&=M,KM'9GI].YT>2<
MOR<@D^2/M3B(V3/8"B!QS)V+4@"?[!Y!XEU&2*BJ'!VGZ)7.X'I G?ITCVE=
M]YK,S[+X(DE+_I*)G5H FJVWEF %U:?24"/&RZME0?8$">2$A[U";WQZ!&P7
M6]6*'EL3^G8XAQC^YRZM_O- )O^89.LQ@?4BMI5J_B1M^93C?Y0,@4NN8&L[
M.6K'0Z6E:E[G\G '&$G(X0UY/8V)->'\2ZLJ,3[OK&W0C.XKGPYG==^SME8"
M:[AA:QITQ&V335T4"W3C/23+57&W^)SC,Q[^-[KP%-\,<M\=S>V\@(&#FY+%
MM,QQE0#1WSKJO88A;*3=RA@:2. Q@IM<Q3G*B[R3E-Z.C%U?!,49@DT"/%1V
MP'R%8NVP@AQ$U^OVU'DDR%$%,B@9AOK^&H9@)DFPPEZHFG[E%Z6JT:KMY] &
M(H9@O#42,<0'U%#$V5K!F5Z+4KRKR+NPKLMUY4+=5*B$Z2ABRW>D+X'[E4H=
M *LZV(J2+/[,.VZF2E?<8/D5I,!)/[L_*T:R%)9([/(JHAH1ZX(;%VL;)+,]
MDJ4U;''$=/$HEF_E\,]EOF" 0A(+5B3 /?!VY\E<,6P4 >L<"[S-6N?T=76U
M H?<4P.M J!#5I!'%?_JYA-B1;9Q*'^?LSC)10<3'%^^\L8TLBP0H@GJYG*A
M%JI@CD)'5"$WN,(X !7ZO+/*<4/)>B.B>PE#@HT-XWKIQY^FZJ,9N<=QP!NJ
M[E]Q1&<,9E\S[V0>Q_;>#I[K0\TH^^/XV+:3\@"+1T'.8W9M$N*&_1?[L?Z)
M_9\G-CG[Y?\#4$L#!!0    (  %V:%<.?MOGT#   /)\!  4    87!T+3(P
M,C,P.3,P7W!R92YX;6SM?6UWVSB2[O<]9_]#;NYG=N*DTYWTF=X]LFQGO>O$
M7MN9WKE?^M D)'&' C0@:5OSZR] 2I9L$42!+R!(USDS'4L"P,)#O-1352C\
MY=\?E_&;>\*3B-'?WQ[]]/[M&T(#%D9T_OO;'S?>Y&9Z?O[V39+Z-/1C1LGO
M;RE[^^__]J__\I?_XWE?"27<3TGXYF[]YG:1T9#P$[8D;_[G^/KBC??F_:^_
M??A\]>W-C]OIFP_O/WSTCHZ\]Y\][]_^$D?T[[_)_]SY"7DCA*!)_O'WMXLT
M7?WV[MW#P\-/CW<\_HGQ^;L/[]]_?+<M_7937/X:ID\5]@M_>E?\^%3TH.F'
MCWG9HR]?OKS+?WTJFD1E!46C1^_^Y]O%3; @2]^+J$0DD+(DT6])_N4%"_PT
MAU';A3?*$O*3MRWFR:^\HP_>QZ.?'I/PK4#]S9L".LYB<DUF;^2_/Z[/GSW3
MCU<+?\592H+%3P%;OI/0O__R\?T[6?J=D#PE2T)3CXHBWM$O7I+=)>0?F?R*
MW(O_)J);^5,6G,Q^?^NO4F_;A)3C_QJTD*Y78L@DT7(5D[?O]CJPXB01!7/$
M+L07F_)2PHXZ4XA"'E,BAND&S*TT,0NJNRR^^/.[>$)RR\XB*EY]Y,<WVV<G
MD[LDY7Z0;A\5^W<DSELQJ%3(%\M1Q/@&*Y5\$J!D.^@3$OPT9_?O0A+EZ,@_
M<NESR<6'/T]I&J5K,3/]B+Z04?5SA])<D+D?%\^</$9)B4"*$K5EFOG)73['
MLL2;^_ZJ$(S$:;+]9B?AYHL_3Z(DB%F2<7(KQLRQ:/_OBM=L4&.X/? ^]-*'
MI^DBU@AR+OY\.5ST!?N1]]:_BXE.UF>%[,KYM$J>YHODT_M6B:PK7R7]_EH_
MX<$;QH6>\/M;H6N(7V:$<Q)>%(]3[HOY8I_+)!Z8[^V_R9%*PM_?ICQ[PM#G
MP<$.\KRA38EW*Y_++2)81'&XK3WC;&F\:C/8>Q7/[0B55&AOY,(*-(#)QFJM
M)MVA8V?,5&U:3+?)#KWSFN'/ 'LZ&(*CH4( W:?&,A@@RA SWE]VZ/SE72F-
MZ(8B_2P(GRA%O-1_)*;LJ+RR;6)4)05R(N1$R(D&PXG.\XE\ZS^6B*;H!*0*
M\CK[O&Y8>SLR(V1&R(R0&2$SLLB,X%MW3^3H@\=)+)V GNA[NO9$3V@B.B,>
M:DJ5($W9)DYPF9!&(8U"&C48&G5=3.LK.:MO]R8UG%75: %)%I(L)%E(LI!D
M(<E"DN4,R:J]D_?#N7X6G"20G_P@8)D8U'3NB<I4_!T4^X09\8*W9YE]F0J&
M% PI&%*PP5"P[^1A\C2QKY[-ZPD-IPN?SDER3O?+1&*>B;5'&[#69M-(VI"T
M(6E#TH:D#4D;DC9G2%O[6WP_;.Z#=^<G4>*QF;?_/,^GH: _]X1F1-(@-J=1
M_OV*Q5&P-F-XS9YAF?6U(2PR062"R 0'PP1O(C&99U'@TW1OO9;S.M)S/;/*
MR.:0S2&;0S:'; [9'+(Y9]A<G4V\IXA'+UT03Q1;^=20AI56M1W1J)8!21.2
M)B1-@R%-W_U42',YNUS)+$S[ <DOG6'*@DB&D PA&4(RA&0(R1"2(6?(D&[#
MMDY\0A9D^1_2!T/R8>M%=,;X,G\DF 4!V[%'B8P$@O$C0XU_(AX?2A'.8G]>
MHN^7_MXA YG*)8D3?\K"ESK/RY];T'L!\F1<SJXS,8/\^&_$YZ<T/!&OKTPV
M3=$.I3S9C*/BV5>$1RP\$]^5,3AM66MR2HQ@4AZ4M"#C^6X>JA@#M+A=:<OX
M J2H!2F+T::>0J7EK,SS[9/_._.Y4.+C]359,?Z2C5>4M"IE?DH@#S_0BOFR
MJ%TYQ2.J9!,_6Y%GH^J&H=C D\T_<I8>*4UN%65MR2GWNDM^RQ[4AD%E26LR
M2E,Y7VL%?%[,EG173*A:\?^+5@IM0E_8EJ0Y$[GD5YS=1T5F[TI9%<4[EW8J
M)BWWXW.AAC[^%U&_=D6Y[N5CRR6C-ZD@.#<+08N2RRS-L\='M$RYA5?J7O)"
M>2S6:/%@^89+%:.JXA;74E<\%L7C3I>$SP4,7SE[2!?3Y]ZE ^%*2UO$[BR*
MR?=L>4>X4L1=$<MR\:E86>:L8DE_5LJB=#(5#1?#/5=<\P5PLZM4+NZ@6A9D
M%YJB/-5Y3X1&ZV]F;X709<4M8GU-YI&T#]'TN[]4@_N\F$7Y;A8DCG73?+^0
M3=F6?AP?9XE0&1/U OZLE$7I;OW'\U!:FF2P@YP3FH5(4WY4OFB 3$R:3!:,
MJM?OET6LO-L;$F1<P'#TX>XV2DO9OZJ(!:E.'X/\.(1B+:DJUJ%T@AA+#>]F
MO;QC<8E8I;^/Q[-:-8%&[R4#F<->@Z_,! BXI7,4_G5PEYG>J-7=,!D (!I#
M*1B;#R/$IM+0#4;FXPB1T=FMP>#\/")P=,8!,"B?1@=*-1<% _/+H/9I#28&
MQ@\P0+^."2 0NP5#\WE,T&@=8&!8OHP0E@IG$5S7&Q8Y@@&C<D7"41D64X*A
M4NFO@T-CK $/ )I2US <DC&IOE7!;7!$QJ3OZHRI<%2,%5XWITZU%1<.QTC4
MW H;+1R+D6BT>C,Z'!)C3=;A-<0D8 *.D+%2ZSQ",*<SW%HW)MLN(/(!#LR8
M;+P 9S8<F#$9> TBC>  C4G9U<=HP'$Q5GG=W,%/#<,1X0"-1/L]U0>7PC$9
MB0H,.W4$AV4DVC#H_! <E9&8=H%GO^"XC,2V6W'*<8>%I<.N 1,+&Q6PR+\2
M%D=A?O_?G1_[-"!>LB D3;R,^ED8B1^VTFH/O]9LU]YAV$8"=G(X]M2I4/=A
M).?9I,]*KORU#"(J#W6&%>Y%[FL2D.A>2O.=I##IJZK8[H-82,.+R+^+XBB-
M2*+M0'5YV])GRRR_"NDR70BF+6@!)PNQ)$3WI+B(]H(EB<#X<G;K/ZK[5*<5
MNSU-$I*^G,#/?_0^]BB99M3LE^E)SJF?+&2:=?'/Z3\R,?EB(O,!I5.?\[4@
M2G_UXYU&\4)^H[IV>R6H7Y0^Y9!G>19"0F4.0E5?]#6L]V!#7BM?@:*8W21L
M&[WUZ8[KO750+ \*T8&UK/;D+*)"([H0"YP0*_7I/!)[43%-U1V!5;+:CZ^,
MA0]1_#(:7_6S5=G.Z;V898ROU8B6%;$N8U*L!N=T,IN)82GVP>0FNTNB,/*Y
M&*+B!;,@_U:L%__)(IK^513/N'*%::5-JRCL34A%G_9*]+1_[4D@,,L7P@6+
M!:=.Y):4OCS4!JW6?V^J58?#@LY(K,F_J:]@-_DFHWSOUM!OI.0T&JBL5:DW
M"<7H_(+X"=E"NJX>,[!*+O1# !W4Z<IAO1Y[<QW-%X(:_4@*70#4$T4=J[VX
MXF3E1^'IXTK:D*J'5&59RU(S@62ZOHIEYG$:RF5\)3=;M98!J6*U#_O7%Y?:
MRO0%>Y.W<N%4%^Q-WOWKH8_7^[^4F 3K-V"Y?ZD8"B0\]3D5*TJR9\$19"L*
M(M5,@%?$1-,0>2]G3SF6KUAQ]DJC%9E4'4/R[ [D!&K^SNCZAX)HQXBNPG@.
MU=>:%[TG+<>$ ]8&1HVMF,$5J+&@I,_<75>E@0?XNHU0LW$$L C 0T#&#)2.
M 8QE.-FX+<#Q@8*W!0#ZN8=&#2_JZ&9+)4#PZ)#13:%*7-1>,C .QG'P+N(
M,$*" 3$_\\E2/[9S,,!PUE0%EX#Q<#3>W72 0 V]8%P<C7DWPZ4\# ",@:,!
M[F88F 1O@)%Q-,C=#!D#SQ08&$>CW,WWW98".>"*G/DA4+<WIMH[DJMI3<Q
M@$9!C(4* ?I;HO%71;./A0,9(P,)-!\+$3(#QR3 I3N*U,/":P:3/G:L.[HT
MP.&C"BH:"X<R \DH:KL[.C6D259?U7%\=0;:-Z$G*^"XC,)L!77GCT4%!/3W
MQ:A1'VP9B_)GAHEIF-98M$ SE!J=6QR56FB&FSXP:F16=!-P3,^+[*!R,]F!
M5P"T(&D4^/'3_M1V[@/%8YQ-A5 I+V9&<"4S0ARS!_G^SA@_8=E=.LOB0R>Q
MYNQUG3;Z.@%\Y?-+GFN58:X,71&>9[12] U0LX7+M!KVJ4C)-<G2!>/1/W=9
M2-1]>5G#E3ZHKT8UJ8*GWD9]/F:,YTWP?,9HSV<,U<2 IP7PM$#)P,#3 GA:
MH/]QU.9I <>!PCAXC(,WC0NJS\B[FS46\WZ;>]4,.7YW$VL(*.FL!]U9_EV<
M;'5RH_=KR7XJD'ALYD6Y'Z>]Y+VPUGNW6YN("3-7'T EOOCSJU!QI8_LDIY%
MCR3<A$,SRK81,B]XIE&=#LW7:$RO8\Y,!%V61P%RSQ;A]U% DAL6JRVRN@J6
MDT^*R2=CK<74$W_')%^N:3A9RON)_IE_K^B)256K?=HZ^+<[^;&?1(&B$Y5E
M>Y7Z)(JS5&G8UY2VFRZ3BX7KBK.9,D/.7HF>TH7L(A<F:<JCNRR5ZO MN_(K
MO%S5E7KOR9G07 K_^3<B]+)P[V2%MD. NCWTZDG[TMB3-:5[D/S6?]R<H#PF
ME*AG@J:T9<D%\Q!OO9!I(]"^SE&58A9>U:YKCJ2[0:YRR>V7Z6D6[V/U#$2U
M&[&\O&OR:V8NN%X_J2<WPJA&SD&YGM _D$.#NK9\/])K9VI)R9X0OR;WA&9$
M;ILR!EMB]T>4+J99D@K!N) OSB3[E\1-_"]47PS1H"6[KE$2Q_+*0+%!<3^6
M>GVXC&@DQXV\F[-ZN3*KC&[W$:00_(/(,\XDG-R+5S[?7)1].=L0$VBL3\U6
M7.CI@7!5O+-6&^,+.= I\AAE\'JB#&PX/0?K]T6G9WE 14-=:G0#IQ(NJ.VY
M0U>GJVDU*BR4K\NU":2*8UEG]-UES5C-6%88(Z#,74.C6G*,L-+:E$9UJ+(>
M-&KS3W>'*EU<G VMIV-9I.'=9K6B*<:R1AOAU, G.)88TYIXF;J^1K6 U\(,
M[+T:U1GYAM,1$G, QLOQ+$H-H-+XTL$(#2&)4KW)5^7N!L/C>+K:6L@ @K_
M^#B>M+85?$J#S, (.9Z]MA9"#=PX<*5S3-IY*WX^-X/J@_U,21V'V,.>Y5C
MO8G0#<+OJ])6G3$N!AXMCD$%Q2'$.(=A2QDGX?]F!>EYX;EML^D6<F]@.+].
MIIK925Z^VY>9S@Z3DZAJ]!6:9QH"V8N4@PW#N9P5R.79. _>/3P1ADDK8P@X
M&J;IL>X+P\ 5#%S!P!4,7%$Y<M3[[RLZC=^E2CTJAS+X5#I4%76302>2]F\2
MPWJDR S;$8$&/<HQ_FP@<XUDJ[52B>J315<F1S2N;S=1:ACFN<_\^,J/PG,Z
M]5>1F/K5/8+4L=R+[1*9;+(LW3*Q(L@X23F6(CH7R^S6_$URY5;@7W7PNT&+
M'OW<-PBW3/&.<HGO7DI\+2=:(F;8)ESRBO"(A=<D8'.:M_(LO[X:J4X?BU@V
M?VQ?0W,OETSERJ(L-^3TO=[/H^C%IUYZ4<3JR)'.J)@6E3E]*\NB>?+PC*I"
M'2FC)$46PPD-]PC*;K7:JN!7,O15_ !//]&+#)9/U3Z_DJ5R :PNW(^)],6T
M2BJR48/JH D>9H+77S^B-KQ#;XX:MKF] SD%;.=)DI'P).-B A9J5+$9YC]>
MKO)LKJ>/A =1HDQ=5+\A%_J;ZXHM=%??COW>7I-5QH.%U)_%3B+6VXB7O:.J
MC@*;Z$O9ALE814,,6NBUD\\6N*J^/+^(J1]]O(G$(-U[X+X$T*;U2ER.-5Q.
M>HUK=*!4=KD\D^VK2*@.Q<7 CCN6TS#&&$$(V>@.3X,'4#W7QNC.,T+Q ABH
M1K<8.1@LL2J4]-3GJ:,N;K MN;OAXCA(>K5^=%M6)1YM!-O MZ<O!1"4S.7:
M[^SXJ$O4.]B@QH)8.>D?RQ%-X#4T5CW>W1WN=!';IH;3L9SU;(06U.XZEH.?
MP*Q/_;D:.S@_ZOZ&8CV8I8O3IH."N7&D&AS!FGSBE#J)H4G@"QPC8V+A-$9Z
MMX2; =>!GRR\6<P>DLX.*E<\P;'P:KVH30XE;T_(7Q"QTFRS!LF]<A($G)1$
MVQK6,O'7E4IXQ5E 2)AG@;KRUSDL<G4$N+KK5L?#STX=?GZFE$B-@@913)Y9
M3V[95,P2\:[O(S$/CM<_Q-L\IT_#=")4PWNAA6@OI.CR478C286,\O]RU;_W
MXT+3$/)$@5@]Y ^YJ6#_B[V23_F)3Z)DQ1(__LI9MA(UQ&<!B>BF("^;'HOY
MH\#2I@A]Q>N^,I3[B2=NU,6"AXB.<KE5G9#BWZ>.GSX&"Y_.R;78<4]G,Z)<
M&>P*T5.*AHYO76PAO8B3-]-Y]$M?'7LQH+8W:PM-1UHV)/Y"(1.3^"+R[Z(X
MWY?4/:W16'^O5"'L[DYQXW[NJKKS0D^*6P0V5H(KGQN]P=+:?87_'8HGIQ 5
M3S;ITEX==][2D_:W,9'IKXDT;,"5_N5\;SO]5<&0X/K.+!Y7G*S\**R^.TQ7
MK:]Y)=A)&2,YBZ@OV,L^(U%T#-Y ?YFC@ +J;GFLW9 +_2TTC@9OM*0!M]YH
MB8#UWBB@(1?Z6V(U,.MG20-NO5%S$TS]AO"XZ(&4>Q;/79C(Y6S/=Z(075^Q
MK^UN*UE+22/J-M=W]V_9)!!LE!,Q4<342-=7L4]3P=$D1UV5Y DU;Z O_=KH
M_547QG.KL'.K<L4]DRXF^'%5994QG%(=^"F;JK?S2HYC80;(RHA^S #IP*$&
M%R/NFJK?8T&K 0Y]Y]-T<5AU[U@?R\#K%"EFICB/*N>K+6#K>$([./CT/ KV
M=KQXUW/1CN4 <-<HUPKW>UWG^.JZ\SK8L7J?]#6PJ$02X)OO8)/J\P1!VPC"
M8@#&N &UC615Z,'(#NRV#9W&4]Y==HD>],RNED"3,*SN#O>. %!@-$IWAWA[
MN*FA&8;UO<]C4;,;&<_ T0ACU @;8+*'; .O98=&C!YN6FX%S?KQ0=WMU .:
MS^!XL;'8)!O@P)H>PQL9O6L&98/PG,X9WI!QM'<*WUC/<6>3,<2V?EAQAW1P
MJ&#V>_RL.SK96\HZ!UY+PS.NW?'3GG):#/"5])U-@XHBWD<OD3M^GI(GO\S^
MI3-7FS(#UHR]O!@F\C1(?B'>MGA:=$\DB12_OB^]YP50LG&2B^^BPX+;;H:Z
M'S_1$U5 IEFEQO+=+HB8S#_+WBLQ4I;!=!INI=-X\'EX*YY8<2E0:1F[1]'%
M@BOVFXP7M&8OSUBNJ4]9DB8[W?S)/"16@^-8?:RAI59[0N))#DV4-J#&<'O0
MTZ'14['KL3793]%8>2N8MKS=4R-B4?[N+ZNF?%F17F2LO"^PO)#ER^&VRJ/^
M<LS*LO:ESH*T2#DJ4*P8"I5E^Y6Z<G!H2CMPB&G"N63:^:YRO#[8:?)M=[?W
MTA T)[I\%!Z@PL-'U>S=D(GT?ORHAP &F+/)0.<9NE\)#V<I.98V0K_-=7TL
M4%8K+,Q00Q@+*J4:/8/ITF/!0'_\3\U[QG)"2S4. $:[L4"@'P8 SC,6,+2K
M)=CB/99S'E4SY%4!H9\G%9;AL<P/K6(&M.V-95!H\0!8N487!]QA1H6AA$Z^
M^HP*$#]+*<%OP?G43ZC!)R\ZS-D*"R\HK6HYI*!"A@9A! XY[]%]/BQGYO![
MT%L.WV(>KTM$4W0"4@7='>CN0'<'NCO0W3%(YN2X80&94TWF!-^Z^Z%%OWBD
MN%TQ>LHX)/[T,OKL6C]_-HOB2/QI1IQJ-FZ96C62L@'YFD@IKSB[%5*>TKF8
M-D0,>?%%F 5IH@Q6-JG6.'KZ/WR^9'2M%*;T]\9/_>;3;.9OS/S'692?:-,"
M8U"K70FG3(Z0;^(_7*A4$QK>D(?BT2O!UE,_G_SR3(98.J_R42F-\I.57&QB
M6'=:?$2[?;^<U7L_NGHM2"E6CW,:9M+ 2Q*9>R1)F$QN1ZI$A%8:_;F)5L:P
MG5%::JS),\_P=<$.-Q]VQ'#SQ9_GWU](??@#&K&Z-V(E/-VC\>+33C+QX<_#
MS(B$*&-+X14ZEWNSM%WRS<WR);#JBMF2,<GWE/SQB1)6;=G.I;T)%B3,8G(Y
M*\^6J7KQ"N3;:*[[/I.YE.4K87/NKQ91X,?*-Z0MV[VTVRUI7P85_+JR=D^7
M;;*5Y9OL!?.I'.=/1WAW:1R3X_7>0B@=8J(6X6(32]>ZPVD=/&*X!OCA]Z"O
M$UWEF8+A#@7S!JR[2 J1-/-)7;!'>:=B49LSOLF777G("E[1:G_VUAXIU_/U
MI_) CT%-=%BAPPH=5NBP0H=5:YW7DDEFQ./& $<K#(^96Q5&@9V6GC$CUCET
M3#IE<:R!$C468"O4>59?:1X+.FH??+NFK*''++2Y[&M\G$.'RN#P3&>6J[%@
MV-6N4,_G/YH3/!VB:NKM'0NFFHT$9I0?^K0%*[@JCS">"QO\&- 8"]K:_ =[
M*@[FG![Z*(!836K%EPU]OZ@%3.N1:D-?9Z$H6L/)T>6HUFB#A1&"H3%. N_*
M2@UUB Y]K899BMK:N(W3S[LV'/!01JE[L&[X0S]'-'[U_.+61"_>79NX%0QV
M$*.R"<O'+0"RX(GVYS*^KF#@&B%[51>,PJ.B&K8VW#"VX?>@IT \#"L:H-*
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
M _C<^)(V;1BAM.(D"5$N>/J*?5U>B>%9\K=AA5G@18P8BE72>:TIC1E9L<8
M1ROV+69N4QT%=EKC%#.RN0T=DTYM6*R!&CL68"L(%:M/6\:"CCJZM%U#_M"C
M+-M<]C4Q+T.'"AZXW)W=?BP8=K4KU(NI&TLL<)>HFD;_C 53S48"<TD.?=J"
M%5Q5/,SHDD6]OG,[&F-!6YO_8*\_A87F#'T40*PFM>*-A[Y?U *F]<CEH:^S
M4!2MX>3H<E1KM,'"RL'0#"5SGI*FZ5S20U^K89:BMC;NH:3W<_"XL;,W;M:.
M".INZCB+575(0G?JC7.  (^\='C"V'U$RL_?=*>5. >):<AO=UJ)L] TCSOM
M;N]V#C2C,[]@7,9S=[9Y2!48).,,N,Z"5"O0%HR3<49;9W%J&QGS[+,#@Z;R
MY <<IN$KRZVDD( #-GQENO-88#B8P]?#VSF_M$/,9BZ@7ST_" 1JH2?FQ)V8
M&*G,(5CV7:V4Q;6;MYSOIZ&<7:0TKBW27N:#]AO'/ 3=YR$P.RTLW]@QHUE"
MDFG&Y4KV0E90V3ZDOM@-,Y#DA^5[2GB\D4<0'I]#A5<4QG,F>,Y$?\ZD@W4<
MSZ*,_RP*AA<-PD_7$Q+5!G3 KC6ZL0%!I$I]ZM ;YVIV6[!JU@^]_>S=^4D4
M>#X-O3"*,^D=(SZG$9TGWHIP>=?W4M[R+6\<\C@)& URZY"\[9O-/$IDWE=I
M1LJ;H,7E8^*'O$+B9?*.R(CF5X9G15\2^7/)4U<U*;337;!,TP> 11>F *>[
M#3$W.-T!-&DX9=(XW8R+*\*W]\!%@8+[59;M5>J38KP!Y7Y1VG8*(9Y/53^>
MYK.PN YYDA:F:JDNW[+#&_GV+@%6=+*]ANTFBB'ISF&KZ%II&33EV#?EM"[G
MBRLEM^%5FPE:C."]6U,5'3%LI2<SID+* _&J5N!:;;P2XYS;6@\: -$ B 9
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
MOQX1L^DY1PQ!XWY'(AAW1TT5$])L=WOMYJ %_Z<I8R)C26LIRA@VN FA.-/
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
MU"P/$%M5&9$\PP09D=!/IHCDCO5MP-(W26ITE6ZCW7ZC]5?N&Q$L;:VC,MN
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
M*:6  W8=L57=$4'CK?@VEU!)MICQE>-X<4%B]J%/Y8N R-DBQ_V&HLAE,Z_
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
M].> -/><- YYI#B@\M_1'=?A1U--6#V/V[HO!,/JVOJ?3,3/20FBQ5,G"#M
M1\\A+S:>-A8_4B !&%E?S@;;-N!1+NP';-G'L,=/&)SH;\[,A < =1!% =C-
ML$$8_/!"@X[_0O4 ^->BTT OUC,Q@6*@P -Y#X)D7Q;POUW ?^C#/XZ &#$V
M)BYY@X<>@3>XJN9,+*+"VMHT1&MYXS&F8^(I_,HN8]B<&^C1>C'AG[$-BA3G
M4@./X ;L.A_@,K 9D,;Q/V*_ J&)H8&8&0(581X@OM[@YP7"],#3L6YDP(A-
M:*A' RD FMCC!#DZT :SYX 0&'D,N#2GPB1&<#^,:I FP)4+@OF, ,08)L-<
MT)X-%\FF$I6CFH]BH1'Q[^3YX9>6I;'/O]C>(QIJ3[I))\EY:[Z57'X9+F0\
MK(L-%&!O[3=+:H#,!-)IAB_PZ6RY$*,;/MQ[$'SA;UI\I0:G3H@D 2*8,&'+
M<Q3=GH_0R*9DH*(I+&3X%Z:V_HPI\^ 1X3L%'7%J$\UZHH:.2P4G'=_??'^8
MU,CAI@\CR) IU7A!T1_']\=SDG+J!*XU7P,OE5PY/Z,(:^,>@*&/85%-UV\5
M!]QX"P:H"@SQ (-]-MBY:M\":0L+Y$T57ZZV!?(9PX9&N>G6)@[5U)B0I-QX
M!QJIZ1'X5[4 %>PZ@X(P5:3^7#[JU,NI/P5GDD#1U4T> 6 Q#+:Y$E^&P4+;
M9&K9+C4IO,!M<PH:W0NLM=U@8B[\=9N,#<)D+16<&IV1KTGXBHB?X<4G#[>K
MGLUMAL6]'V!4[%+9V@@D*34SZ/#P35@6_$BX&F@2JDYB>S;7]L=8IW(Z! Q_
M'U3#;JG%J\-.SG!"MT[',[B>9,T]%XN ])C5R0L>$ZPA#T<[P6O#T*",$MUD
MYI.SN$^=N\<2YN$LW&-,11@10I5J0G4?1@MJ@MD:W$W0B^Y.V"QL#W9ZWU9Z
M] Q_ROX+W].E96H!NR/('J7;XY/N.!'%XO[B/*18F!JC*[R314D >QNH?""U
M,*NTNZ UVRA! :)JDFI8CF<SZQ!(]V)YL N.2(A H//X9&&S"[UOS,O1;1$]
M$I/IE\S\)%.Z7G@NX>E>#"LWI0L0V4W1U^'P=K&EHC#B-Z$"*+[^.]@$,PK
M=_[KF;[U$Y!@1=F@>*8O.2.@:<*ZPNB@:S\Z$9LE_IMOSBE 'QN;F)1+O\ "
M/XU -U&D!J)QQ@9ZF>C4 K/)$B_'/')HFAX\XHZSN$7U4/L))''S]U3/0N_#
M3@QV93[ G 0-N@+P[?F2T46!1WW'-DQ3ZK*A%$ZH>!X,I@)Z/.%ZN4FMER<0
MAA/'G]L]!0B?7(N/.!=@__2P#?0''*V^YS_9.@&(YT@%*4S]!+!#,^O#9Z9@
M8EQS)Z]3SNQSJ>,!7>E*\==(P-D(&PSBSH2 1H[9:ZZNZ0MV%HQ/O3>/$:9C
M)0#I,WU9O.X15)T"IET ($JBD!@'#M<L8"6Z$CYJF 0/<[9-6'EYUO=MSFEL
M"3"'T9L WE_SP]]>Z;E?!U.9%"RB[:LDC&P1VQ#LU.DT\):!:-:HF*#FJ/W(
MG",P%."#U@9^8N8#76A_ !C5]6Q_=Z+^.9L7<U@\&U8;T OF]0W8U2K,VP(%
MF^&!!NS]/0;[YB[=Q1C *'*L$;PK@QJHIF +.>/@BY;AF[S\'8 5@H'A.8'J
M!?SVQ(KA4&G-!1U^HC([<"#IFL_7_DX1<!,=#[0!0ID.T$J"[8JQF#\/IBC$
MS(5[$>S%%&RN /Y)Q<Z$4&<5HE4LG/&,.1KBW]<)F85@7(/:R R#8-&.T;_(
M8N#%T]C&8)+POI P7>8\ !S08GV1=63ZB;^6#3Y&,/R(T$%"[X/Y_CFU8%-C
M; V0YB\9'@5>BW*^$_-XWXG"=PE8J\4VRT?178H([#AD96[(F\([:L0 (O$M
M'5,1:\/;8-H>1\7PSG ;I=GES><%Q/ELX5-*4KZ74>@N#Q]\3V,5L7TE(_2E
M!GU[/G'VVMA'#*,3O H],!,6R[KY;.E4&C*M(_JP8W0?RX"+\_G<N.=08033
MZ;!6W#K'$/K1HGIAX"/P%1=_;L 8L&/ MF@P%UWXD?[]5 [C!5CH8-393[TX
M\$))<_>%!QK!R$2+<.B*/N #+'$HRV'K[3@6"'$WO']'W&?^VR;Y7);7RW>S
M43S;_D3HD^@P?,&8^R18A64VC@<SI?R<Y<@*JNH)=29M N&_(O='M#H/U6-
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
M8EQPB9JI3DJ"WD.QE_3F<;618\!7\3=7XAL3T$!^> ]:NW5M*//">&O,,^%
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
MBA"S<$YC? *%\L@)//;DZA/ZC3>U0=J"T%1<!Z1<@,+8XN 3]#V5YQBP*\.
MY@NF&1A:H,%Q* ](A(0C%MV9N@4?XRBR],>QJ=Q#3)^7 \(>.>/H,QS%%/2
M94R3B06V%]\07B^$@XW YU#^"F";X0VPX6[@\0)]7F2C]\$^!4T":A*M0ORU
MFJ%#;.<)M"*^ 2:=F$%F20]8J7 X9'O""?BB;*@W >YF%M@X#[A';X!DZ<Q-
MA$H8NG!T5->(M?[X04"(9)R-E;YN_U0LD):QTM2'0*=N3 RI<V#!N3TR:XJR
M@(\#GH9I8(67AZ@$(\<"\B.*>D%4B-I2"\$97%C+?[B H4I++(6C,81DA.D
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
M)^ ",$YFXE!\_9D+0*EIV:-N!4+5,BP[((_ 'A UH+,J=2B-(M^';K$'KNX
M?T<S'BM]1(_ B<,FP(ZBLX>MW=&%] [^>(4+[ 0V":P)<-  ]9O@O6@37<8_
MT,<4#O!'CH?NN3=PS3YM'WLT05.B XY:#?3"&-Y*>NH.I@+.^@"%4"]ZUXU\
MUY''F()Q1J7V?I,;#KZ2(.@OZ$K))JXWW[[^GNV7S(;JDPW4X2/T@1)CG=_?
MSNW:%WM!ZK>CX;'K/,U^B!Z4<O/MZL?WE]L!SB2#Y(7-P4&N"B<R^9^_?1Z%
MWM9-[]O9\=?;L][OQ[WS^[-;<%*L)WWJR2L+3#&Q66)-GY01XYM3P["[2)3Y
M[RK]+RN'1GSU3OF0WLG?3F\SCV6!;<NNI7J%EY3PP9 NQ"-/8M%]QS(2"3?A
MYG2[E2[L#MH"8 %^!#F'YL%Q'QUL#"I:H$I1[RCW;#!2E4O?J*0/9M%%+S&-
M1'1AZ1?O_&ZC\"&%<.)@U 'UP4G<G#@W;5 M8+HH=SY\P$7BT0];!X,,OG^_
MY 8I]]<GEZ;],Y./^?I6=&:)_U"T2DJ^!(-+7M46XM44PR=E@5Q '?4.Y^JX
MW,W.;)L1]"]21FY@!+<Q+O?3B]^:UATZ8),\D3TO7 'F$5TE#-G0$B&SE.F#
M46BN2CO5'[F,6U<V.AA@[/HC,))MM'-S@IH8Q]QD;.'U4<G!B!F!Q:Z'Z?CD
MA<U#P> P?)V*+].1RDZUMH)(9=3C_1Y_FA*KT@9H_AKQ:?/71=7P;.@S:70(
M^DE'0P^U_7QKK0V/M]')^%PP[3TQ[7?.JV?(JZOO;UR>TFM/Z0H%ZF8/*9Z
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
M9$0Y-#>,P[^Z/+W40Y-[PES:)!A<5<#7-K'FBQ!/0?3 P_@K+F;@Q39C!GQ
M[Z:\+YNNDZCS27AYI=(^. %&>L:F+X(U.&<<=H""B]0V#N0Z,N7*@CE9(@.-
M7P?;G//Q$T03BE_GQ@^6W (1FH)CQ7L[<-CCCU24/_"B*/ H&S@I!:EB Z83
MG3/S> S(4\-S#;^B^6=\$<62,K[$Y,N![F7]CA_BS,>TK4;&%_+B,OP"MX0X
M1"3>B2@97Q$<D <G8.FT\W"4'CVDDS+PN2 '56-B' 2S\_(I''80;^^FF \(
MWI?!8U58;I]/PMSGQ*@?WH_"?VD0ROSS<13PWYR^)<-G\,PD@+\.@!V#B<$3
M5^=-20V=WU28T :Y$CO\D.@-)#!GPB<'6Q,F*6*0<]Y*HC>%E__P:^1HW'WY
M'>4K]&'R?'";"+[/1KHU5&G+Q1' ^J+,1LJ&P3"ND.:H_M^,%KM/6%BX11XF
MS8I;?]?T?GJ<N7E6B"YBJ;"MD=T3DUX*62GAXP.=(,('?D"7W3R@BA%K$\9Q
MPQ M'(<(CCA>>$8DH;"TW3*YR*"7YA+(7*S>M46*FK/'N</!41'7>KG(M_-2
M;?-+-SQI BW"$;7F8/AIV9CIRF<W]_SA]7\P*5 <CXMPF=_/NST.IO"=,+<Y
M&\4R5;ACD=UN+';;@%1_ 2: 7LD)Q\ZK@R\)83.$<*Z;%JHV*C8:,\/DEUDL
MNH!Z8OI/FXJ=N! S9841FK>N8RF861.3I]PL0O$V$*XPJ543K2?09O@%>*7B
M\D_'\#('PB?_%99G3<40*3D=WFBYE)-I32-',5& @'>/C%<<<'. 'H]EBO+H
ML6[ M#UZ,=<*@9='IUG7!J6<?!/L(>1D[(Z<2T/=\YR!R2]09-CF3[JG1C<)
M&*JDI9*64K2$QBJ_S0_S4D^N_WEQ>JQU%9!/!AN;@W@"9_@L#P?(A(IXLQ?A
ML''+4X0.D!2]8(("$A2XR:.-,,:#Y?31+P>Q[8SY=;LARC3#RC8I(NGJ;Z0;
MW&$6UC"E:@8DMO%[-9ZE(*1I+%N!?!<Q935#C+^0I%!R3LDY"<ZQ',^3Z<L6
M?,G 4O5\\/;0D2;O78:!D <H.,3=LHP?2,.$JK^14&WFBY 1OS/&P@+X. (>
M$91:TF9)F[,6@HM6),:'4>J:2'A<:H)YK ]\!Z.4)(-C$E&0(!:Y,\JYLZ9$
M=A@KD*V9<X<3N0N^(JUH*LS%X>.&<$FK):VF:/4VTW85#IT(QR;[U,:JJ73%
M@X'-(1P<YLED*OJ2YDJ:2]'<-9FC X1SQ*HNO)1 #8V-[Y%Z)J[C,ZZWT0H4
M\04J+L6H*WP-.AAS:*4$'48!"_';_%_)L&_:U<<?4%VG;Q(T CP *](?&+]C
MZKNR%1O0>YA16])Y2><OT#D<$'SE4EK]R'P8H0L6D9ETKO 2S,:&@+QZ.D:3
M$L0(:/O!=9XXG4JC%5/5B1"YM^8S;K&6I%B28H:[-%,H$/K=F/M*),<O#^-R
M,!82()-3DM[$120LAJA/);F5Y%:$W%!^85PTS"TAPB,_' &4R! @Q <>W/+-
ML2PX@K%_(JP;F P37]:$<R?]269[8.T\0P,UGC22%J$B8$47M$"\C,O3B3EA
MF( J[_G%B")_S@'ESXNG,:(6?H<^%DVK)/^2_%/D_RT_KIIC?F86<B7"NS/A
MTI+N2KHK>#45NZ@?6+P445SD(V79V$H9Z,HP/=WS,;@D\YADV4^?31WA[H@;
MWI+X2N)+$9](S9Z"NF3Z8"0"YYR.@+3<0"#M"5R3&6F7R+YD@Y'M6,X#0H4,
M72!+-QA0OAV7GQ2?&A+*BKSPSX,(IRQ2M&@YB$_B-7UF.?8#*??$I$+G7IJ[
M(H,T$7WEB3*)GV%O]JC$E[MV:8%OPJ.%!+[+)@%/<UV$V394MOO6"]J:94%;
M6="VNH*V+8!>E%KY36CE3$\\+-C@\1^,/O:3(2 )^\$1+[@Z>@@L#GD(JG3
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
M@4;K.4-?E;![HF.#ZX>*QQ^9(/QB8H\X,A/.)E)=(#]:H#H37$0P:/I88H2
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
MXU _X8R?:S$NZ(H;)99PC8N;[-'HNA=++J.J TZ64<2 C2>6,V4DA_%7.O?
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
MP^, FU?QO++\?4ZW.&E&#HU:TZHQUT)3VZ*:)=];\:BU.77:0JD<-^%$X:7
M^"EO]S9ZNZ>5MWOE[5YYNU= >E[.^#*%96>M'I>=32TI.]N-!?18IE/UQ%O!
MQ00L?V;" =TQ5=> ,0)7]GPLXO(?H@;L%?5KBQYMZ/MR,*EJ6 U7D\E_\IB;
MU44MW=E,]23HB(N'*A9RB(<5QK7F!@1YLNE2I:GIB[IBT<=ZHT"^X$76KY>[
M]$FTJ"'@BL =C,1MX,3%B)6?JG5]$]20&>PE:@BCO:NDASFQY781N--B\U^(
M1+BX1\P.V;QJ$O7ZA7EUV\E= !\G1CKR/A)CL?PZL1ZK+T0Q$X"#R[_&IKP>
MW=)FQ^U_D7$I?K^+M1Y>-"OVC*TH^5OY>,Z$$IS7L"NU%W>E4Z\5W)6<M;:6
M6NH!LF3^91UU:C-BA=2*_JB;%JE<W/=8GU6^2_((/-Z)AK>;HV]BQP/;_>#J
MXXIRNI@E0_.)QC&4=JVA:EJ5W\5[L\S@XWV@XZ7X:-[MI%AP_"5ZA+93JZKU
M3@.\Y':A5R:[,&)KM'J=[Z+LU8?;,[LQ(GN6>K]2HU @4:T+)CWVD<5["Y=1
MR)V_,I@X=FR0BG(>^($;WRC>Y(EC^'*IV(?C"VB7B>*)<V&4$8^BBMNX(4*[
M)6H9$MQ\B)SP!R;*6";#+&4,9B=ZAN.>2 !C4M-R0\/=FBW0IJ:_C/H3F@.3
MJO4<!2_)O.&41H<C_Y./DKX$IL[?%G:$-,+/* @'+(>=[D/!AXD]'F.<*>GL
M#_%H/O>_W#(,CRC"^,>] A?;AC\/&'>/=B&U8R59;@F7/BOEC5#:>L$#_!4E
M5Y7G59SW[KXJIN>A%]2[^T'?'%=;X*7T?>7X^+/YA?Y$D&XG#IBV;@C'QXM^
MK[F24X[N@K[O3,R!TFCSP/DIF$&/A!; $?1^8\8#GL#Q,0P$+LR -SP]0^RV
MZ?]XRO43_(5?WT:#=;3FQ_CQ(07S>?@F4N^%[?ENP,^20.+B0^N9HW_^8'Z1
MY094#>9S[8%L9HXG%FP6;8V>?.L 7JE'9@KE7$3OI@T"T8GOAG7#E@](U"<\
M2V&H^U,$2)00<X/8:LS4:@;A:FC/.<X=K@;Q,/E0 DT_,#GVGFYQ$0P39B8=
MT#"P\(++=QV9*P8ZF)LF"I7A&N;09$;.(ZGA$6LOK,J0TD1F"OVO;@<Z&([<
MKVWP]>HN8OC(%YJ4$#<V?3]=;HPC/^I6P'4&#@MG 4OG1Q%.>,@+D,,)D;@D
MD'H<W:>^,P;>.M#F19?^T:EY/GSP<H^AO6'\ NFMP/C_&]B8"*JU\MA>:QUK
M8,V<A_L4YRQ@67".3%^Y=#PT#D L'-T3?]9KK?<?E>_D,C!I:B<?AH/)'#7.
MAV!Y8%\?4??S;'('&I@$-:G!Z^*1'DQJ%(-$RRS.<[H=TZK\O?0T?P1)T$5&
M0>VGQZB [D"4,9^W0488OY@@PO%\8?*(9%S^A"]R;06X8\HZ&CB617^O*#=!
MWX*]Z>.M-'8Z(K9%"4"!6LYNX*UZ<'X6(W,.7TVR )G!%.:7F+ALSVU-!7AE
M6&(UC)^=W YQH2V'E.F^^A"SPL/@D];,*NHB/H,7AF<;X_8D=]?ER1FF065@
MQ(-ZK/4IYU['SDG?*]ETADUCW3/XJ9D#<D!=]F@R$.HVO#JFE"B107<-D46!
M%,,Y.M&'8R10'@A'59 >G#0O6L814\.8OK1G@8=@%CXH$)<>%GW#2/W[7 S[
MYGC6<DQ8(O-OI>9M[&&G'%_<GWU7ZA7E'S]Z5_<7][W[BW^>4?8Q?' I_WYZ
M<7=R>7WWX_;L3NE]O?YQKWSOW?Y^=J_<7MS]O@N6ZWHB"WJN9)R2NXV4SBM/
M(_DH$B"YX1"!BG Z?\*P3/@T)24"\2)>R=9ERQJIJU%13JZO[F^O+^^(LFYN
MKT_.3I&8#I1T8.%GPH3DVO$4)!88 QC:(+_ L;A939@T!GK$5*IW@%OQ@T)I
M%)$.0)<(@X$2QR4X-P4X!^8DW"V,+8Q#Q1%W4?";8EC<1Q,7?@:#8N!!?LDA
MT]WW]$L<B_\Z,@HS?AT9 O+7Q/K"14">CQ>(DY4E[D@,F.<#7VL85I'+,R*"
M&,0)8A(2A'*$AED A@V"EZ-78K AI26"ZW<;@(^FU?5CK7G$^'+X1TU#?!2$
M^WX'JW>YU7?V+-HH] 9D'FO=>D,YPH=D\43\B;"(XOV<J\A)X'J!SF-#M!,)
MNH=/O/P5Q@5A;$5R_^)SJ<19*&\\%,?XP\3WW+Z(/<4AIQBW$_D9<<G-;!I=
M?L_A!%3^4P\S,8(QWH7^APEC'C4".?=D?8!Y-,: ESLC^>6 8PQXB(.GVU,^
M1#0C!+GB; '^K!?TP3N5VWIW=A([TOC.\)1G(I1PW9QA,(O4]*E_F67"6*))
M0M[NY6U%?"EQ1==GX6(,)$\P"(.Q2(3E(8/Q.+#-@4S7G<_5>7P<\?@,E_*,
M+HQ3 [=B%CUZ)Q:%,C$>P,_$8 ,2.4AM#V!<XOO"541<6&9\;33CJU9F?)49
M7V7&5[&&)EPPRT*!6&RRF"&A2F4&8_Q'R'1TO',?MQT)JS@"6?J$QQKJALB8
M80:6/MBAO^/8%"# YMX\J\F3_6:H @)$^*.,I^)H+C/D#!2G_R>WGOA<I#K,
MCCSAHO\,C >)IYZ*U6+([+@/=A@B\E*Q" K_D3FA3!7'\RB\G;/V0S3 O])%
ML(A^1=:9*F[P<HUDL36Y9C#N(5D91G3=6,"JI?+Q*)8G@IF9="/ZKH?V-+.C
M]".>V#)P""XT=*2Y076(IP@>Y0F9?'2==(%J%Q,7A#.I7,,^Q RD6QFM.%#_
M.I9[(5%&0#[P,'",$$2QF!>'M@7A%K620YHUY5Z&T@CW,B+W*/)3U"$;SCID
MP_<YUOM[SCP8&Y4!ZUA'9$KII.4(]IB")?\3S5K?F7U>76P]6V>3/24^1(SL
MW=XK%Q<5Y?K^M[-;Y>+J_/KV>^_^XOKJ0!E.1O*TBG)Y]JUWR4-X9Z<75]\.
M-89W+:XJV[)\*'[!G(:C3L10+OF'$08%R(<?OCY2;)@L+R4%R0':3+=%6_)'
M^(OCBGPE*<:BMY$MRHP4R#;>,0_U =[I3\-7'(G+/]Y9/3ZKT_"5X<3XE9N8
MKA26A*4@,@RB%\HI"""&</:DW;%H#6<DBNS#[G5\);&G;8:R* ;S?<'-$CF%
M^*)!['F,_91R/JS<QWF:;/@Q*MJGPE!]K OE2-?T_&)4HI6GT(SPB3$8]HGI
M1LN@KWD#'P]OH?BL>>TNRF0+;V5EQS[Q0@R1H'$RUKV?LB+9%ZW@*=!$U0_F
M,+X;F*P7[D7RK<)<@Y>,36HP1,"443@+9^_KL?9"OJS7AZTIB&!"2N?)Q0P(
MC-5QPRK$=X]UN^<F.]C.L*+$)H7DH2J4VD4>RI1\C4?L?60F3E=.BX;#< WJ
M9&=(_@9=)3(7G$ES[/$-XPT!/7"&*:#TH&-*2GS^R0OC\*I0J'K:>;R;Z3.:
M%-T@.F U!G3YC:_)&#->7IZ8>I)1L#X<LT2!I!SK4;A%1 8F:EXG\!'Q(1[B
MHM-T?"1 O/,/FS(F]BN5QA*[HZ8)J\@3F#!&S G;B40;CAF.$I(ZK)!+3EPG
M_Q/:!# =9@^F_ -SME]F[^Y$:32!8D["ATUN0^G1)2Z=#H^0\A0"3K[D-4HX
M_VAW<LB1+R&<N$PX#(=]&O&7$-]5#M:@2"4?>0&YPTB".! 2;,1=2&9@#<*A
M4[&0;SX(3)*!;)1%)^%@H!/E S"6RS/!90X(;+J%0>&'$4HHDQ]5Z!A303+:
MMYC2S%/).+EA>8>X:Y\XIFAE!GL!AZ1'Z$:83T9$G90T46Y4J@:7S.EH&:K2
ME]XJ)F/ 0WQU-!&+NCB@I/"PL6\42HX0@&'3^462"'/@'& 0RF+.FB.?".75
MH5Y+S28^[2B=A/NNN>DDD:&-B25F"!C#7T6,$.78;MT$7Z>IV*M0=H!RWCNY
MO[X]5#.Q!P3#,^9Y3VEQF\,U_XR+1AZ:Y$0UDUA !T09ZY)JR-GT!J[9Y^XF
M;W4B.YWTHE8GMR;8'^=\)F&3$S-$7ZPIYVBH:-7CWTFGN2RF;.W(IQ0^LB?O
M;5P<5BY0%)K@)5;L F@UDSI "I$,4:LH/ZYNS[Y=W-V?W9Z=*G>]R[,[Y?I<
M.?O'#T3\NSL[^7%[<7]QQI,D?MR=X9?"T3I4]L'-N;O[ 4[TS8_;D]]Z=SE;
MLN'EEU=TM7IY15=>T957= 7M]R@\P3UQPK4!?P[LUJB2C6( B(OHHOG89R/=
M&DJ/.(KUD$\H56<($6B$X[A1]S(](P9=[1]KG2/]_5']?58BS<<-2E&^%?R<
M_OX.3@7I;X)UE_9#^'=OH@_"OW-*A17=XT^SQ>YBDDR)]ST&BGY& ?%??_NO
M__KL]QUC^N6S[\9>^QO3<7+ABZD>9J!;DC_ZCN\[8QH"1S R!<C,%&9F+-93
M;_X:VS+?6,VH6LZ@P$RPU_;?WVF-ES5%\;?.:D%^X,=\KXC)%<JK5]R'_A&X
M_OC/^W"ZC=:O<C_7P+!B46F; \T.S%!WE9N0.X%91-%7E#''S0YA>N 47W]*
M@O[CVS/OZ."_+OUWRW1:\%3GG62!%R9.\^6*0G&Z_$Z&KH17?%A%6:JV2QRE
M;8>A[JG2_"J$U;SC5>:2P8SM\U))"!LAA)Y /KUQS0%V93631[_Y"6'G Z+&
MD@3?" FF9-&6Z2\M"94MSP?<!HK5@9#F!:+65.G9'(Q@V[QZ(V!$CK3W);>^
M$6[M15@SRBDXTKJK_%.W K9E4HQL& KI?]>GRK^8KWQE,4Z.RIM*OLEV6N9[
M*!G1'J3,&C8 J]4[\'_-YOO5^MMK=E#>??G? .2IIAQ+7,7ZO(.(-G%!9I\G
MJ]8Z*,9@XK**HMVO%U7OOC1;:JM:7>EZLEZSI6U;R=Q_F?>&VKH.IE[IULMC
M66#01LDBN\DB[74=3$VM-@C2<<-G\WI-VVR2DMU+32M Q$I=NS 5-3JE(%EP
MT+6IUT:E/(G=4*\E5RP\Z-HT*O:O;.VE1MUGWS5*TB:E6EVC4LT,*JS'3"QZ
M=[DUA5QXAEJCKG:U=?/$!H]F8V_:LHJOK]N#/L0S6R'CKLEF*!EW)QAWC5:(
M:!ZP"P>WT\[^OABU:8ZM \<:3D#EDSMJ#>1/L=;H8A.)]7)V'2][]MB-V9U
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
M3GN0,S,26$#U<&R&@PM99 RNC89;'F<1_.22HWYK..BWBL'+6DCUBO=$L,U
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
M(\EAI T"Z;36Q#7G4E;KL;BV!8OGU[]UM:.P9!%8;D3:@ZE(7$:#-/]%RXQ
M1R88_$*?R5Q=)77BA7"UON7&B53$C( */Q(-X/P&T:W&'(:Q@ZM2HN[6,0-:
MQ%?_?-UNM7K8$5J= W8(3"70.DDVW@RK[I(';("5900CQED%HO.?OKMX<W$-
MQZVC]NHP^$E30N)X?_]!@/I_:=$ILY75AOG?R9;H^FP^K3ID;L<:R2XB^%9+
MR;F"]_&95DPF$<*+%G(&+F.NNP.X7X5KF+1 \)$GFL7-"H#G\A.:7\SDW#=.
M%UYJ$[+:7WL[_<W-JW/'"6ML6E^L1WW2.O+^>.$A>A_BYUOPGVC7!61LPL'P
MB>!3C'8N$Q9^*)G!'5/.X(H7&.\ J?\6.^.8]1] I[!I#^^M3W!;+NX!]T<L
M;/OW =P3 LQG) 0;=[/:X VS"$4$73Z#CTI/)4_&/ K8- &1B4:#E'8^=6*8
MS3 U@U(Y4W*<!R9N.2X=096A0L2RP)PM91BOM &="X?+%>3N""@><VN9F9%(
MSCYRU+LRIL6V!(U!E9+B$>D@@5B8N,Q13&%W\/DB3#,19V!+^F_9?\H-KP:A
M">3"2DSR$(T8HEV&$[0%YH6DG<8MT#2=X#01;R$;77'#GG//BG/'7R+G.*1"
M(:J)($L41SZSTWC;K-P7*M0VE"L*%<LRP3&1*2N0C9!E@D)+@4 GCA)WI5R2
ML,*_75.-/$\$#1R11"E1 )FG"ZK2L-5Z>V)F,TBEGMHY+0T?"^L,>@,8-0:[
MT<IHA5UV;LP=:_<$>U8$Z^PPP:YOH='70E_W;$6A*CNG(*!3++>PB7!Z <QP
MSPA$N" (('*!6X*#L!F)DUB. 9""(%TGPL92VQ+[46@T6@9J%$;'/,%F"P?(
MA(0CM0+<-Y=S]=;) 5_4;^$J7 JJIE6@)(T/%)I6F!J80[9LK2B]I2A%133/
M=?ZB!"6KW3TG'^/DW,Y[.=)Z_:=SE^K]7>7N&;?8@BCVN=SC%(LHS8Q9:;?O
M0OG>B"-=*DTA@]0EPJ#$*#41UL<^E.+*CT.%_#)JKD9>PR7S_*M2R"6'HBHJ
MTTV!$11ML5J*Q!]TVG)D12+0/30!$1)=GPLH&JFTE'SZ[<KZ3-5'2FTY&N0P
M,E.G@A%42\DHP..TO!'+)!9[A)1X-9/';R-.@AB#L3]/]C%W)_D]^F+XO76
MNT/S[4/CUFS''6(B$B(QLUIY2#*+&P#5F<1L9I(YRY#W@HV$%&Y&Z>\FM;3G
M>$)ZKH7MXI;H2IWJ4XV;:D)%:0KDNO7I>APC*;P!OF(=^V<E$BF/=WA!>PF)
M8#4>:(U[CB@PVN^)O9/$CG>8V.<3)DL?W0CU/$WIB=L$\6HW5(B+G'R+:!TN
M-Q>-GL?8$2.M#:7I2)?N?@NVR2?80II3W9T^?C8$HWE%[[<F'CR!]O1H\#T5
M=Y&*R0Y3\2R@_"Y;Z.2V*@S]G8V4?$)DI;Q8QW%IB!,K2>B&47-M';;3 V(<
MRR) X%-X]@$']W1)D=P8\]:D*\-CI)P_=*;S:%4N[#H,5F7,+C)VBI9^,^")
M3R.\/ZH0/P,I/G)9G4"OR4>_V47[#>#9'6R=_.T.MOQCQV2^)T3+:$7!<Y67
MR\!%S'I";GZG^EV8QK "=MK813KL&W#(/!?.<?Y :C#2F'#3_42@?7Z0 V0O
M1F)+D1X_J0Z?;SG\4RG0?+^]E,J_[&,/]^=7.QE[=_G\:BBQLL,V_R8/@I$.
M96/!D3)5*KLX1YIR]I%RTU#I^>S4UZC^N>G\8<N3B%@=^82#[ T!CB78T?)%
M?+N7M%5EBUV0>8C:*"3(EAQ6YN@%])2?3)57;'PLM8]].TO 73Y@&F*.FQH,
M,Q'2@?O(B(3RC_\KYD4A111JHN6$4YZHV+AZB\%4P93GA=0SCG>GF0X1E-WB
M-?+P=TFB[V0C?Q%#GC,+_Z(7,TGF;'A]WGV !&W:&,*,ZB/MG,YQ^.(&_%D_
MF/'HH!D!_3O$P3X@"/(1XN!U!/0Z\T/C>NV/[@V=)VA_\_-#$SEN/6&HAFVL
MO_;XT :V82X5RA]S_Z,.:#>W$[MOM%@3X-1IK5U#2D_#]];Z_M^AWG_#&6>"
MI_!VL6G])Y057_[$#R[#23K.>3E[RG>&R\/VRAF'G^>-9_7:="(F$$MF[6GM
M^^%_K^N7PW?G]3=7Y\-_TX\45NY>OGM[?;76EJ5U].;=1MK+X?+=AQ_?+[6A
M!/W28L,'6M&@7UX,^@W_"Y)? 5!+ P04    "  !=FA7Z571*ZD$  #4%
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
M+@  &A<$ !0              ( !]!@  &%P="TR,#(S,#DS,%]D968N>&UL
M4$L! A0#%     @  79H5ZM?76/#/   YD4# !0              ( !1$<
M &%P="TR,#(S,#DS,%]L86(N>&UL4$L! A0#%     @  79H5PY^V^?0,
M\GP$ !0              ( !.80  &%P="TR,#(S,#DS,%]P<F4N>&UL4$L!
M A0#%     @  79H5U3""WR2T@  L#,, !,              ( !.[4  &%P
M=#(P,C,P.3,P7S$P<2YH=&U02P$"% ,4    "  !=FA7=!*+B3$(   G,P
M#0              @ '^AP$ 97A?-3DQ,#0S+FAT;5!+ 0(4 Q0    (  %V
M:%<]!"(1$@@  $@R   -              "  5J0 0!E>%\U.3$P-#0N:'1M
M4$L! A0#%     @  79H5^E5T2NI!   U!0   T              ( !EY@!
M &5X7S4Y,3 T-2YH=&U02P$"% ,4    "  !=FA7 &'ZZ8L$   4%0  #0
M            @ %KG0$ 97A?-3DQ,#0V+FAT;5!+!08     "@ * ',"   A
%H@$    !

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