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

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:		23905787

	BUSINESS ADDRESS:	
		STREET 1:		60 CENTURIAN DR
		STREET 2:		SUITE 112
		CITY:			MARKHAM ONTARIO CANA
		STATE:			A6
		ZIP:			L3R9R2
		BUSINESS PHONE:		9054790654

	MAIL ADDRESS:	
		STREET 1:		60 CENTURION DR
		STREET 2:		STE 112
		CITY:			MARKHAM ON
		STATE:			A6
		ZIP:			L3R9R2

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	BFD INDUSTRIES INC
		DATE OF NAME CHANGE:	19930328
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>apt20230331_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/20230331" 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>apt20230331_10q.htm</title>


	<!-- Generated by ThunderDome Portal - 5/10/2023 3:38:12 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-03-31" name="dei:EntityCentralIndexKey">0000884269</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:AmendmentFlag">false</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:CurrentFiscalYearEndDate">--12-31</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:DocumentFiscalYearFocus">2023</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:DocumentFiscalPeriodFocus">Q1</ix:nonNumeric>
<ix:nonFraction id="c660" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:FinanceLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c523" contextRef="d_2023-01-01_2023-03-31" unitRef="Pure" name="us-gaap:NumberOfOperatingSegments" scale="0" format="ixt:numdotdecimal" decimals="INF">2</ix:nonFraction>
<ix:nonFraction id="c427" 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="c426" contextRef="d_2023-01-01_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c415" contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="apt:NumberOfStoresRented" scale="0" format="ixt:numdotdecimal" decimals="INF">1</ix:nonFraction>
<ix:nonFraction id="c414" contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="apt:NumberOfStoresOwned" scale="0" format="ixt:numdotdecimal" decimals="INF">3</ix:nonFraction>
<ix:nonFraction id="c413" contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN" unitRef="Pure" name="us-gaap:NumberOfStores" scale="0" format="ixt:numdotdecimal" decimals="INF">4</ix:nonFraction>
<ix:nonFraction id="c348" contextRef="d_2023-01-01_2023-03-31" unitRef="Pure" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c321" contextRef="d_2022-01-01_2022-03-31_PlanNameAxis-The2004PlanMember" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c320" contextRef="d_2023-01-01_2023-03-31_PlanNameAxis-The2004PlanMember" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c78" 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="c77" contextRef="i_2023-03-31" 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-20230331.xsd" xlink:type="simple"></link:schemaRef></ix:references>
<ix:resources>
<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:unit id="USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2023-03-31_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-03-31</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-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: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-03-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>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31_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-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-31_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-03-31</xbrli:endDate></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_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-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-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:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-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:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-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:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-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:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-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:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-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:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-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:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-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:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-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:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-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:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-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:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</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-03-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>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-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:instant>2023-03-31</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-03-31_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-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_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-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_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-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_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-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_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-03-31</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-03-31_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-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_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-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-31_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-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_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-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31_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-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31_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-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-31_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-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-31_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-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-01-01_2022-03-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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2023-01-01_2023-03-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>2023-01-01</xbrli:startDate><xbrli:endDate>2023-03-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-31_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-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_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:instant>2020-12-31</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-03-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:instant>2023-03-31</xbrli:instant></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_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-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_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-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_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_RelatedAndNonrelatedPartyStatusAxis-RelatedPartyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedAndNonrelatedPartyStatusAxis">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-03-31_RelatedAndNonrelatedPartyStatusAxis-RelatedPartyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedAndNonrelatedPartyStatusAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-12-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedAndNonrelatedPartyStatusAxis">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-03-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedAndNonrelatedPartyStatusAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-05-02"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000884269</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-05-02</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="f1bb42062-60dc-4919-8185-d0d60e5c5b0f" fromRefs="c92 c90 c86 c84 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>
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">&#xa0;</p>

<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 class="hr-custom" style="text-align: center;height: 1px; color: #000000; background-color: #000000; width: 15%; border: none; margin: 6pt auto 6pt auto;" />
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">FORM <ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:DocumentType" id="c2">10-Q</ix:nonNumeric></p>

<hr class="hr-custom" style="text-align: center;height: 1px; color: #000000; background-color: #000000; width: 15%; border: none; margin: 6pt auto 0pt 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;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" 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:'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;">For the quarterly period ended <ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:DocumentPeriodEndDate" id="c4" format="ixt:datemonthdayyearen">March 31, 2023</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;">OR</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; text-align: center;"><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" 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:'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;">For the transition period from to</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;"><span style="text-decoration: underline; ">Commission File No. <ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityFileNumber" id="c6">001-15725</ix:nonNumeric></span></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;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityRegistrantName" id="c7">Alpha Pro Tech, Ltd.</ix:nonNumeric></span></p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">(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 border="0" cellpadding="0" cellspacing="0" style="font-family: Times New Roman; font-size: 10pt; width: 100%;">

		<tbody><tr>
			<td style="vertical-align: top; width: 50%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" 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%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityTaxIdentificationNumber" id="c9">63-1009183</ix:nonNumeric></span></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 50%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 50%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 50%; text-align: center;"><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityAddressAddressLine1" id="c10">60 Centurian Drive, Suite 112</ix:nonNumeric></td>
			<td style="vertical-align: top; width: 50%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 50%; text-align: center;"><span style="text-decoration: underline; "><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityAddressCityOrTown" id="c11">Markham</ix:nonNumeric>, <ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityAddressStateOrProvince" id="c12" format="ixt-sec:stateprovnameen">Ontario</ix:nonNumeric>, <ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityAddressCountry" id="c13" format="ixt-sec:countrynameen">Canada</ix:nonNumeric></span>&#xa0;</td>
			<td style="vertical-align: top; width: 50%; text-align: center;"><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityAddressPostalZipCode" id="c14">L3R 9R2</ix:nonNumeric></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 50%; text-align: center;">(Address of Principal Executive Offices)</td>
			<td style="vertical-align: top; width: 50%; text-align: center;">(Zip Code)</td>
		</tr>

</tbody></table>

<p style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; 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-03-31" name="dei:CityAreaCode" id="c15">905</ix:nonNumeric>) <ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:LocalPhoneNumber" id="c16">479-0654</ix:nonNumeric></p>

<p style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; 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: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-color: rgb(0, 0, 0); border-style: solid; border-width: 1px; vertical-align: top; width: 30.8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Title of each class</p>
			</td>
			<td style="border-bottom: 1px solid rgb(0, 0, 0); vertical-align: top; width: 32.4%; 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;">Trading Symbol(s)</p>
			</td>
			<td style="border-color: rgb(0, 0, 0); border-style: solid; border-width: 1px; vertical-align: top; width: 42.3%;">
			<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); border-right: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Common Stock,</p>

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:Security12bTitle" id="c17">$0.01 par value</ix:nonNumeric></p>
			</td>
			<td style="border-bottom:solid 1px #000000;vertical-align:top;width:32.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:TradingSymbol" id="c18">APT</ix:nonNumeric></p>
			</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-left: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" 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;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-03-31" 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-03-31" 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; Accelerated filer &#x2610; <ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="dei:EntityFilerCategory" id="c22" format="ixt-sec:entityfilercategoryen">Non-accelerated filer</ix:nonNumeric> &#x2612; Smaller reporting company&#xa0; <ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" 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-03-31" 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-03-31" 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 cellpadding="0" cellspacing="0" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 55%; margin-left: 0pt; margin-right: auto;">

		<tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 58%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; 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; margin: 0pt; text-align: center;">Class</p>
			</td>
			<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: 32%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; 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; margin: 0pt; text-align: center;">Outstanding May 2, 2023</p>
			</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 58%; 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;">Common Stock, $0.01 par value</p>
			</td>
			<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: 32%; 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; text-align: center;"><ix:nonFraction id="c26" contextRef="i_2023-05-02" unitRef="Share" name="dei:EntityCommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,188,206</ix:nonFraction> shares</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">&#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="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</p>
</div>

<div>&#xa0;</div>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt 0pt 0pt 5pt;"><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 0pt 0pt 5pt;">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-family: Times New Roman; font-size: 10pt; width: 100%;">

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

</tbody></table>

<div>&#xa0;</div>

<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="width: 100%;">
<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 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>
</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; text-align: justify; margin: 0pt;"><b>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>

<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>
<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 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>March 31,</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;"><b><b>December 31,</b></b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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);"><b>2022 (1)</b></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;">Current assets:</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-03-31" unitRef="USD" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" format="ixt:numdotdecimal" decimals="0">13,821,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-03-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">35,000</ix:nonFraction> as of March 31, 2023 and $<ix:nonFraction id="c34" contextRef="i_2022-12-31_RelatedAndNonrelatedPartyStatusAxis-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-03-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">8,406,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_RelatedAndNonrelatedPartyStatusAxis-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-03-31_RelatedAndNonrelatedPartyStatusAxis-RelatedPartyMember" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">726,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_RelatedAndNonrelatedPartyStatusAxis-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-03-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">24,094,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-03-31" unitRef="USD" name="us-gaap:PrepaidExpenseCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">4,712,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-03-31" unitRef="USD" name="us-gaap:AssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">51,759,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-03-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="0">5,788,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-03-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>
			<td style="width: 1%; font-family: Times 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-03-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>
			<td style="width: 1%; font-family: Times 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-03-31" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">1,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;">&#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-03-31" unitRef="USD" name="us-gaap:InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" scale="0" format="ixt:numdotdecimal" decimals="0">4,964,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-03-31" unitRef="USD" name="us-gaap:Assets" scale="0" format="ixt:numdotdecimal" decimals="0">64,055,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;">Current liabilities:</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-03-31" unitRef="USD" name="us-gaap:AccountsPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">383,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-03-31" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">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: 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-03-31" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">903,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-03-31" unitRef="USD" name="us-gaap:LiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">1,673,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-03-31" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">632,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-03-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>
			<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-03-31" unitRef="USD" name="us-gaap:Liabilities" scale="0" format="ixt:numdotdecimal" decimals="0">3,069,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 contingencies</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;">
			<ix:nonFraction id="c74" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:CommitmentsAndContingencies" scale="0" xsi:nil="true"></ix:nonFraction>
			</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;">
			<ix:nonFraction id="c75" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:CommitmentsAndContingencies" scale="0" xsi:nil="true"></ix:nonFraction>
			</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;">Shareholders' equity:</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:c77"><span style="-sec-ix-hidden:c78">.01</span></span> par value: <ix:nonFraction id="c79" contextRef="i_2023-03-31" unitRef="Share" name="us-gaap:CommonStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF"><ix:nonFraction id="c80" 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="c81" contextRef="i_2023-03-31" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,135,556</ix:nonFraction> and <ix:nonFraction id="c82" 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 March 31, 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="c83" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:CommonStockValue" 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c84" 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="c85" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c86" 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="c87" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" 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; 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="c88" 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="c89" 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; 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="c90" 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="c91" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">64,055,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="c92" 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;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;">(1) <ix:footnote xml:lang="en-us" id="f1bb42062-60dc-4919-8185-d0d60e5c5b0f">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>

<div>&#xa0;</div>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 3pt;text-indent:9pt;">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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</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 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>For the Three Months Ended</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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>March 31,</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 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>2023</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>2022</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: 70%;">
			<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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c95" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">13,800,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="c96" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">17,661,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;">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: 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="c97" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="0">8,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: 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="c98" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="0">11,219,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>
		</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 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: 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="c99" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="0">4,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: 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="c100" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="0">6,442,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>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">Operating expenses:</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;">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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c102" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">4,313,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="c103" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">4,306,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;">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: 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="c104" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">243,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="c105" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">212,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>
		</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 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: 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="c106" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:OperatingExpenses" scale="0" format="ixt:numdotdecimal" decimals="0">4,556,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="c107" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:OperatingExpenses" scale="0" format="ixt:numdotdecimal" decimals="0">4,518,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>
		</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 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: 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="c108" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">426,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="c109" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,924,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>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">Other income:</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;">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="c111" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">109,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="c112" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">49,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;">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: 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="c113" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="0" format="ixt:numdotdecimal" decimals="0">158,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="c114" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="0" format="ixt:numdotdecimal" decimals="0">1,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>
		</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 36pt;">Total other 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; 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="c115" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">267,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="c116" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">50,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>
		</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 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c117" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncomeLossAttributableToParent" 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c118" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncomeLossAttributableToParent" scale="0" format="ixt:numdotdecimal" decimals="0">1,974,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;">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: 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="c119" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">141,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="c120" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">452,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>
		</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;">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: 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="c121" 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; 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="c122" 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; 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;">
			<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: 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="c123" contextRef="d_2023-01-01_2023-03-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.05</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="c124" contextRef="d_2022-01-01_2022-03-31" 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>
		</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;">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: 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="c125" contextRef="d_2023-01-01_2023-03-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.05</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="c126" contextRef="d_2022-01-01_2022-03-31" 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>
		</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;">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: 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="c127" contextRef="d_2023-01-01_2023-03-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">12,150,067</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: 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="c128" contextRef="d_2022-01-01_2022-03-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">13,058,871</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;">
			<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: 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="c129" contextRef="d_2023-01-01_2023-03-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,193,602</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: 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="c130" contextRef="d_2022-01-01_2022-03-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,159,490</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 0pt 0pt 3pt;text-indent:9pt;">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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</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 0pt 0pt 5pt;">&#xa0;</p>

<div>
<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 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>For the Three Months Ended</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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>March 31,</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 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>2023</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>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;">
			<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: 70%;">
			<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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c133" 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>
			<td style="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="c134" 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(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; text-indent: -9pt;">Other comprehensive income (loss)- foreign currency translation gain (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: 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="c135" 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; 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="c136" 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(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;">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: 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="c137" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0">689,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="c138" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0">1,369,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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</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>

<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 colspan="1" style="vertical-align:bottom;width:35%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>For the Three Months Ended March 31, 2023</b></p>
			</td>
		</tr>

</tbody></table>

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

<div>
<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 style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 7%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 7%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Accumulated </b></b></b></p>
			</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="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 7%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 7%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Additional</b></b></b></p>
			</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="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Other</b></b></b></p>
			</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="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#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); width: 11%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Common Stock</b></b></b></p>
			</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 colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Paid-in</b></b></b></p>
			</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 colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Retained</b></b></b></p>
			</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 colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Comprehensive</b></b></b></p>
			</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="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#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><b>Shares</b></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><b>Amount</b></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><b>Capital</b></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><b>Earnings</b></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><b>Income (Loss)</b></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><b>Total</b></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: 32%;">
			<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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c141" 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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c142" 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%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c143" 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%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c144" 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%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c145" 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%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c146" 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; width: 32%;">
			<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: 7%; 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: 7%; 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="c150" 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="c151" 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="c152" 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; width: 32%;">
			<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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c153" 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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c154" 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="c155" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" 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;">)</td>
			<td style="width: 1%; font-family: Times 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="c156" contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" scale="0" format="ixt:numdotdecimal" decimals="0">809,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="c157" 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="c158" 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; width: 32%;">
			<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: 7%; 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: 7%; 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="c161" 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="c163" 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="c164" 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; width: 32%;">
			<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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c165" 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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c166" 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="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: right; font-family: Times New Roman; font-size: 10pt; width: 9%;">-</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
			<td style="width: 1%; font-family: Times 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="c168" 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="c169" 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; width: 32%;">
			<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;">&#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: 7%; 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;">&#xa0;</td>
			<td style="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: 7%; 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="c171" 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; 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="c172" 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; 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="c173" 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; 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="c174" 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; 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="c175" 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; 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; width: 32%;">
			<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; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 7%; 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="c176" 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; 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: 7%; 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="c177" 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; 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="c178" 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; 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="c179" 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; 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="c180" 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; 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="c181" 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; 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="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;">&#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 colspan="1" style="vertical-align:bottom;width:35%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>For the Three Months Ended March 31, 2022</b></p>
			</td>
		</tr>

</tbody></table>

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

<div>
<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 style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 7%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 7%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Accumulated </b></b></b></p>
			</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="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 7%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 7%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Additional</b></b></b></p>
			</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="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></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; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Other</b></b></b></p>
			</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="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#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); width: 11%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Common Stock</b></b></b></p>
			</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 colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Paid-in</b></b></b></p>
			</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 colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Retained</b></b></b></p>
			</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 colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; width: 1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Comprehensive</b></b></b></p>
			</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="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt; width: 9%;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#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><b>Shares</b></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><b>Amount</b></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><b>Capital</b></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><b>Earnings</b></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><b>Loss</b></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><b>Total</b></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: 32%;">
			<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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c184" 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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c185" 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%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c186" 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%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c187" 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%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c188" 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%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c189" 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 style="font-family: Times New Roman; font-size: 10pt; width: 32%;">
			<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: 7%; 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: 7%; 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="c193" 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="c194" 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="c195" 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 style="font-family: Times New Roman; font-size: 10pt; width: 32%;">
			<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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c196" 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: 7%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c197" 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="c198" 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="c199" 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="c200" 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="c201" 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 style="font-family: Times New Roman; font-size: 10pt; width: 32%;">
			<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: 7%; 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: 7%; 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="c204" 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="c206" 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="c207" 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 style="font-family: Times New Roman; font-size: 10pt; width: 32%;">
			<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;">&#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: 7%; 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;">&#xa0;</td>
			<td style="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: 7%; 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="c209" 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; 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="c210" 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; 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="c211" 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; 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="c212" 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;">&#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="c213" 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 style="font-family: Times New Roman; font-size: 10pt; width: 32%;">
			<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; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 7%; 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="c214" 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; 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: 7%; 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="c215" 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; 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="c216" 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; 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="c217" 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; 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="c218" 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; 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="c219" 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; 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 0pt 0pt 5pt;">&#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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</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>
<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 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="margin: 0pt; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><b><b><b>For the Three 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>March 31,</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 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="c223" 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>
			<td style="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="c224" 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 style="font-family: Times New Roman; font-size: 10pt; padding-left: 9pt;">Adjustments to reconcile net income to net cash used in 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: Times New Roman; 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="c226" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:ShareBasedCompensation" 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: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c227" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:ShareBasedCompensation" 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 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;">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="c228" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">243,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="c229" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">212,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 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="c230" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">109,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="c231" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">49,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 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="c232" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="apt:OperatingLeaseExpenseNetOfAccretion" scale="0" format="ixt:numdotdecimal" decimals="0">237,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="c233" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="apt:OperatingLeaseExpenseNetOfAccretion" scale="0" format="ixt:numdotdecimal" decimals="0">228,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; padding-left: 27pt;">Changes in operating assets and liabilities:</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 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="c235" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" format="ixt:numdotdecimal" decimals="0">3,024,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="c236" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" format="ixt:numdotdecimal" decimals="0">3,814,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 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="c237" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInDueFromRelatedParties" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">865,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="c238" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInDueFromRelatedParties" scale="0" format="ixt:numdotdecimal" decimals="0">214,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 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="c239" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInInventories" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">303,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="c240" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInInventories" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,086,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 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="c241" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">190,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="c242" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">736,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 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="c243" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">737,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="c244" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">714,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 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="c245" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">239,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="c246" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">227,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 used in 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="c247" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,697,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="c248" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,179,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;"><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="c250" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="0">289,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="c251" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="0">133,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="c252" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">289,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="c253" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">133,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="c255" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="apt:ProceedsFromPaymentsForStockOptionsExercised" 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>
			<td style="width: 1%; font-family: Times 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="c256" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="apt:ProceedsFromPaymentsForStockOptionsExercised" 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>
		</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; 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="c257" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:PaymentsForRepurchaseOfCommonStock" 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; 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="c258" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:PaymentsForRepurchaseOfCommonStock" 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; 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 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="c259" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">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;">&#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="c260" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">756,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;">Decrease in cash</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="c261" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">2,469,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="c262" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">2,068,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>&#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;">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="c263" 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="c264" 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(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;">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="c265" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">13,821,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="c266" contextRef="i_2022-03-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">14,239,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;margin:0pt;">&#xa0;&#xa0;</p>

<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 TOCLink" style="text-align: left; 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;">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>
</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;margin:0pt;">&#xa0;</p>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="us-gaap:NatureOfOperations" id="c267" 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: &quot;Times New Roman&quot;, 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-03-31" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="c269" 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 months ended March 31, 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 includes 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 March 31, 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 TOCLink" style="text-align: left; 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;">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>
</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-03-31" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="c292" 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 21pt;">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 provides for a total of <ix:nonFraction id="c295" contextRef="i_2023-03-31_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="c297" 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. Due to the cancelation and expiration of options, the 2004 Plan had <ix:nonFraction id="c301" contextRef="i_2020-12-31_PlanNameAxis-The2004PlanMember" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="0" format="ixt:numdotdecimal" decimals="INF">1,305,251</ix:nonFraction> options available to grant at the time the 2004 Plan was replaced in 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="c307" contextRef="i_2023-03-31_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 three months ended March 31, 2023 and 2022, <span style="-sec-ix-hidden:c320"><span style="-sec-ix-hidden:c321">no</span></span> stock options were granted under the 2004 Option Plan or the 2020 Incentive Plan. The Company recognized $<ix:nonFraction id="c324" contextRef="d_2023-01-01_2023-03-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">3,000</ix:nonFraction> and $<ix:nonFraction id="c325" contextRef="d_2022-01-01_2022-03-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">28,000</ix:nonFraction> in stock-based compensation expense for the three months ended March 31, 2023 and 2022, respectively, related to outstanding options previously granted under the 2004 Option Plan. For the three months ended March 31, 2023 and 2022, <ix:nonFraction id="c335" contextRef="d_2023-01-01_2023-03-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" format="ixt-sec:numwordsen" decimals="-3"><ix:nonFraction id="c336" contextRef="d_2022-01-01_2022-03-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" format="ixt-sec:numwordsen" decimals="-3">no</ix:nonFraction></ix:nonFraction> restricted stock awards were granted under the 2020 Incentive Plan. The Company recognized $<ix:nonFraction id="c338" contextRef="d_2023-01-01_2023-03-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">18,000</ix:nonFraction> and $<ix:nonFraction id="c339" contextRef="d_2022-01-01_2022-03-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">27,000</ix:nonFraction> in compensation expense associated with outstanding restricted stock awards for the three months ended March 31, 2023 and 2022, respectively. As of March 31, 2023, $<ix:nonFraction id="c346" contextRef="i_2023-03-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" format="ixt:numdotdecimal" decimals="0">44,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-03-31_AwardTypeAxis-RestrictedStockMember" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c347" format="ixt-sec:duryear">0.63</ix:nonNumeric> years.</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;">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 TOCLink" style="text-align: left; 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;">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>
</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 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:c348">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 three months ended March 31, 2023:</p>

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

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

		<tbody><tr 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 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>Weighted Average</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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 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>Exercise Price</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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>Options</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>Per Option</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: 64%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, 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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c369" 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: 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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c370" 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: 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;">Granted to employees and non-employee directors</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c371" contextRef="d_2023-01-01_2023-03-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" format="ixt:zerodash" decimals="INF">-</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c372" contextRef="d_2023-01-01_2023-03-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:zerodash" decimals="INF">-</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;">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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c373" contextRef="d_2023-01-01_2023-03-31" 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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c374" contextRef="d_2023-01-01_2023-03-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.20</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;">Canceled/expired/forfeited</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: 15%; 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_2023-01-01_2023-03-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" format="ixt:zerodash" decimals="INF" sign="-">-</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;">&#xa0;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c376" contextRef="d_2023-01-01_2023-03-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" format="ixt:zerodash" decimals="INF">-</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;">Options outstanding, 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; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 15%; 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="c377" contextRef="i_2023-03-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">301,365</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;">&#xa0;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c378" contextRef="i_2023-03-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.61</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;">Options exercisable, 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; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 15%; 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="c379" contextRef="i_2023-03-31" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" format="ixt:numdotdecimal" decimals="INF">286,665</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;">&#xa0;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c380" contextRef="i_2023-03-31" unitRef="USDPerShare" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" format="ixt:numdotdecimal" decimals="INF">3.59</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; 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 March 31, 2023, $<ix:nonFraction id="c365" contextRef="i_2023-03-31_AwardTypeAxis-EmployeeStockOptionMember" unitRef="USD" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" format="ixt:numdotdecimal" decimals="0">33,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-03-31_AwardTypeAxis-EmployeeStockOptionMember" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c366" format="ixt-sec:duryear">4.48</ix:nonNumeric> years.</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-03-31" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="c381" 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:Times New Roman;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 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>

<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-03-31" name="us-gaap:InventoryDisclosureTextBlock" id="c383" 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 March 31, 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-03-31" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="c397" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 36pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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 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="c399" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">12,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="c400" 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="c401" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">3,013,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="c402" 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="c403" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">8,861,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="c404" 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="c405" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">24,094,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="c406" 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>

<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-03-31" name="us-gaap:EquityMethodInvestmentsDisclosureTextBlock" id="c407" 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="c411" 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="c412" 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:c413">four</span> facilities in India (<span style="-sec-ix-hidden:c414">three</span> owned and <span style="-sec-ix-hidden:c415">one</span> rented), consisting of: (1) a <ix:nonFraction id="c417" contextRef="i_2023-03-31_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="c419" contextRef="i_2023-03-31_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="c421" contextRef="i_2023-03-31_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="c423" contextRef="i_2023-03-31_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 TOCLink" style="text-align: left; 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;">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>
</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:c426"><span style="-sec-ix-hidden:c427">no</span></span> impairment was required as of March 31, 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 March 31, 2023 and 2022, the Company purchased $<ix:nonFraction id="c436" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="apt:ExpenseToAcquireInventory" scale="0" format="ixt:numdotdecimal" decimals="0">5,036,000</ix:nonFraction> and $<ix:nonFraction id="c437" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="apt:ExpenseToAcquireInventory" scale="0" format="ixt:numdotdecimal" decimals="0">6,183,000</ix:nonFraction> of inventories, respectively, from Harmony. For the three months ended March 31, 2023 and 2022, the Company sold $<ix:nonFraction id="c442" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:ProceedsFromSaleOfProductiveAssets" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction> and $<ix:nonFraction id="c443" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:ProceedsFromSaleOfProductiveAssets" scale="0" format="ixt:numdotdecimal" decimals="0">258,000</ix:nonFraction> of inventories, respectively, to Harmony. For the three months ended March 31, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $<ix:nonFraction id="c448" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">109,000</ix:nonFraction> and $<ix:nonFraction id="c449" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">49,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 March 31, 2023, the Company&#x2019;s investment in Harmony was $<ix:nonFraction id="c452" contextRef="i_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestments" scale="0" format="ixt:numdotdecimal" decimals="0">4,964,000</ix:nonFraction>, which consisted of its original $<ix:nonFraction id="c453" contextRef="i_2023-03-31_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="c454" contextRef="i_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate" scale="0" format="ixt:numdotdecimal" decimals="0">5,885,000</ix:nonFraction>, less $<ix:nonFraction id="c455" contextRef="d_2023-01-01_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital" scale="0" format="ixt:numdotdecimal" decimals="0">942,000</ix:nonFraction> in repayments of an advance $77,000 in payments of dividends and $<ix:nonFraction id="c457" contextRef="d_2023-01-01_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember" unitRef="USD" name="us-gaap:EquityMethodInvestmentDividendsOrDistributions" scale="0" format="ixt:numdotdecimal" decimals="0">1,352,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>

<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-03-31" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="c458" 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 March 31, 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-03-31" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="c470" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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 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: 66%;">
			<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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c472" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:AccruedSalariesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">337,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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c473" 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: 14%; 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="c474" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:AccruedBonusesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">50,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: 14%; 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="c475" 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 0pt 0pt 9pt;">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: 14%; 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="c476" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:AccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">387,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: 14%; 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="c477" 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 TOCLink" style="text-align: left; 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;">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>
</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>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="us-gaap:EarningsPerShareTextBlock" id="c478" 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 months ended March 31, 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-03-31" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="c497" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>For the Three Months Ended</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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>March 31,</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 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>2023</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>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 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: 16%; 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="c499" 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; 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: 16%; 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="c500" 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; 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>
		</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;">Shares (denominator):</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: 59.8%;">
			<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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c502" contextRef="d_2023-01-01_2023-03-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">12,150,067</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="c503" contextRef="d_2022-01-01_2022-03-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">13,058,871</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: 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="c504" contextRef="d_2023-01-01_2023-03-31" unitRef="Share" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" format="ixt:numdotdecimal" decimals="INF">43,535</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="c505" contextRef="d_2022-01-01_2022-03-31" unitRef="Share" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="0" format="ixt:numdotdecimal" decimals="INF">100,619</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>
		</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: 16%; 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="c506" contextRef="d_2023-01-01_2023-03-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">12,193,602</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: 16%; 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="c507" contextRef="d_2022-01-01_2022-03-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">13,159,490</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 colspan="1" style="font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">Earnings per common share:</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: 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="c509" contextRef="d_2023-01-01_2023-03-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.05</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="c510" contextRef="d_2022-01-01_2022-03-31" 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>
		</tr>
		<tr style="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; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">&#xa0;</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;">&#xa0;</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">&#xa0;</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;">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: 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="c511" contextRef="d_2023-01-01_2023-03-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareDiluted" scale="0" format="ixt:numdotdecimal" decimals="INF">0.05</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="c512" contextRef="d_2022-01-01_2022-03-31" 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>
		</tr>

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

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</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-03-31" name="us-gaap:ComprehensiveIncomeNoteTextBlock" id="c513" 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="c515" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,352,000</ix:nonFraction> and $<ix:nonFraction id="c516" 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 March 31, 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>

<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-03-31" name="us-gaap:SegmentReportingDisclosureTextBlock" id="c521" 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:c523">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 TOCLink" style="text-align: left; 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;">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>
</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; margin: 0pt 0pt 0pt 18pt; text-align: justify;">The following table presents consolidated net sales for each segment for the three months ended March 31, 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-03-31" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="c564" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>
		</tr>
		<tr 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>March 31,</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 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; 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="c566" contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">8,631,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="c567" contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">10,237,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="c568" contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">5,169,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="c569" contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">7,424,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: 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="c570" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">13,800,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="c571" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">17,661,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 months ended March 31, 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-03-31" name="us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock" id="c572" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>For the Three Months Ended</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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>March 31,</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 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>2023</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>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: 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="c574" contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">956,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="c575" contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,667,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="c576" contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">784,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="c577" contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,701,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c578" contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,740,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="c579" contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">3,368,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 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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c580" contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,047,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="c581" contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,394,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: 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="c582" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">141,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="c583" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">452,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: 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="c584" 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; 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="c585" 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; 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 March 31, 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-03-31" name="us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock" id="c586" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b>December 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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>2023</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>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;">
			<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="c588" contextRef="i_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">3,486,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="c589" 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="c590" contextRef="i_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,298,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="c591" 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="c592" contextRef="i_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">4,784,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="c593" 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="c594" contextRef="i_2023-03-31_ConsolidationItemsAxis-CorporateNonSegmentMember" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,060,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="c595" 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="c596" contextRef="i_2023-03-31" unitRef="USD" name="apt:TotalConsolidatedAssets" scale="0" format="ixt:numdotdecimal" decimals="0">5,844,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="c597" 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 TOCLink" style="text-align: left; 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;">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>
</div></ix:exclude>

<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>
</ix:nonNumeric>

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2023-01-01_2023-03-31" name="apt:FinancialInformationAboutGeographicAreasTextBlock" id="c598" 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 18pt;">The following table summarizes the Company&#x2019;s net sales by geographic region for the three months ended March 31, 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-03-31" name="us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock" id="E0919BEB-CDF5-4DEE-8B88-136167B70A0E" escape="true" continuedAt="A975A506-899C-4016-8058-FA497EB87257">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>
		</tr>
		<tr 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>March 31,</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 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; 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>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 59.3%;">
			<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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c629" contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">13,694,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="c630" contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">17,076,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: 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="c631" contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">106,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="c632" contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">585,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>
		</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: 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="c633" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">13,800,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="c634" contextRef="d_2022-01-01_2022-03-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">17,661,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;">Net sales by geographic region are based on the countries in which our customers are located. For the three months ended March 31, 2023 and 2022, the Company generated approximately $<ix:nonFraction id="c614" contextRef="d_2023-01-01_2023-03-31_StatementGeographicalAxis-CA" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">45,000</ix:nonFraction> and $<ix:nonFraction id="c615" contextRef="d_2022-01-01_2022-03-31_StatementGeographicalAxis-CA" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">474,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 18pt;">The following table summarizes the locations of the Company&#x2019;s long-lived assets by geographic region as of March 31, 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="A975A506-899C-4016-8058-FA497EB87257">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><b><b>December 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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>2023</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>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 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;">Long-lived assets 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>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 59.4%;">
			<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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c638" contextRef="i_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">4,460,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="c639" 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: 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: 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="c640" contextRef="i_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,328,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="c641" 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: 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>
		</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 total long-lived 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="c642" contextRef="i_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember" unitRef="USD" name="us-gaap:NoncurrentAssets" scale="0" format="ixt:numdotdecimal" decimals="0">5,788,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="c643" 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: Times New Roman; 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>

<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-03-31" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" id="c644" 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 March 31, 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>

<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-03-31" name="us-gaap:LesseeOperatingLeasesTextBlock" id="c649" 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;">The Company has operating leases for the Company&#x2019;s corporate office and manufacturing facilities, which expire at various dates through 2025. The Company&#x2019;s primary operating lease commitments at March 31, 2023 related to the Company&#x2019;s 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>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">As of March 31, 2023, the Company had operating lease right-of-use assets of $<ix:nonFraction id="c656" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">1,488,000</ix:nonFraction> and operating lease liabilities of $<ix:nonFraction id="c657" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:OperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0">1,535,000</ix:nonFraction>. As of March 31, 2023, the Company did <span style="-sec-ix-hidden:c660">not</span> have any finance leases recorded on the Company&#x2019;s condensed consolidated balance sheet. Operating lease expense was approximately $<ix:nonFraction id="c661" contextRef="d_2023-01-01_2023-03-31" unitRef="USD" name="us-gaap:OperatingLeaseExpense" scale="0" format="ixt:numdotdecimal" decimals="0">322,000</ix:nonFraction>, during the three months ended March 31, 2023.</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 TOCLink" style="text-align: left; 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;">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>
</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 aggregate future minimum lease payments and reconciliation to lease liabilities as of March 31, 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-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="c680" 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 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>March 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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 nine 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="c682" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" scale="0" format="ixt:numdotdecimal" decimals="0">763,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="c683" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="0" format="ixt:numdotdecimal" decimals="0">484,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; 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="c684" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="0" format="ixt:numdotdecimal" decimals="0">365,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;">
			<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="c685" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="0" format="ixt:numdotdecimal" decimals="0">1,612,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;">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="c686" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="0" format="ixt:numdotdecimal" decimals="0">77,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;">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="c687" contextRef="i_2023-03-31" unitRef="USD" name="us-gaap:OperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0">1,535,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;">As of March 31, 2023, the weighted average remaining lease term of the Company&#x2019;s operating leases was <ix:nonNumeric contextRef="i_2023-03-31" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="c675" format="ixt-sec:duryear">1.9</ix:nonNumeric> years. During the three months ended March 31, 2023, the weighted average discount rate with respect to these leases was <ix:nonFraction id="c679" contextRef="i_2023-03-31" unitRef="Pure" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" format="ixt:numdotdecimal" decimals="4">4.07</ix:nonFraction>%.</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-03-31" name="us-gaap:IncomeTaxDisclosureTextBlock" id="c688" 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>

<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-03-31" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="c690" 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="c694" 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 March 31, 2023, the Company has written off the $<ix:nonFraction id="c697" contextRef="i_2023-03-31_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 in 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 March 31, 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 TOCLink" style="text-align: left; 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;">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>
</div></ix:exclude>

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

<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-03-31" name="us-gaap:SubsequentEventsTextBlock" id="c702" 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 March 31, 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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div></ix:exclude>

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

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

<div>&#xa0;</div>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;"><b>ITEM 2.&#xa0;&#xa0; </b><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: Times New Roman; 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: Times New Roman; 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: Times New Roman; 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: Times New Roman; 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;">&#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;">Our joint venture may present risks that are only present when third parties are involved.</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>

<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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

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

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

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

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

<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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

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

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

<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;margin:0pt;">&#xa0;</p>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Impact of the Novel Coronavirus (COVID-19) </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;">After the start of the COVID-19 pandemic in early 2020, we experienced a significant surge in customer demand for our proprietary N-95 Particulate Respirator face mask product and other personal protective equipment (&#x201c;PPE&#x201d;) products as a result of COVID-19. We experienced a dramatic increase in revenue from sales of PPE products during 2020 and to a lesser extent during 2021, especially with respect to face masks and disposable protective garments, including shoecovers, coveralls, gowns, lab coats and bouffant caps.</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 an effort to meet the unprecedented demand, and to aid communities around the world in responding to the ongoing healthcare crisis, the Company ramped up production during the first quarter of 2020 of our PPE products, in particular our N-95 face mask, which is manufactured by the Company in the United States. We addressed the growing customer demand for PPE products by increasing and improving the human, mechanical, and supply chain components behind production, but even with these increases and improvements, customer demand for PPE products exceeded industry supply from time to time.</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;">Since 2020, we have encountered a number of constraints within our supply chain due to government-mandated shutdowns, raw materials shortages and shipping delays. Although we continue to work to alleviate these supply chain issues by securing additional supply sources, in the event of subsequent shutdowns, shortages or delays, our production and sales could be further impacted. Further, we have experienced increases in the costs of raw materials, and if the prices of raw materials continue to rise more rapidly than our sales prices, our profits may be impacted negatively.</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;">Global shortages in important components and logistics challenges have resulted in, and will continue to cause, inflationary cost pressure in the Company&#x2019;s supply chain. To date, the inflationary cost pressure has been more pronounced in the Company&#x2019;s logistics costs, but these supply chain challenges have had an impact on the Company&#x2019;s results of operations and ability to deliver products and services to its customers. If shortages in important supply chain materials or logistics challenges continue, the Company could fail to meet product demand. Additionally, if inflationary pressures in logistics or component costs persist, we may not be able to quickly or easily adjust pricing, reduce costs, or implement countermeasures, all of which would adversely impact our business, financial condition, results of operations, or cash flows. In addition, the war in&#xa0;Ukraine&#xa0;has further increased existing global&#xa0;supply&#xa0;chain, logistics, and inflationary challenges.</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;">COVID-19 and other factors have resulted in a downturn in the global financial markets and a slowdown in the global economy. This economic environment may impact some of our customers&#x2019; ability to pay or lead them to request extended payment terms, and we have experienced cost increases from some of our suppliers. Additionally, we expect that demand for our Building Supply segment products could be negatively impacted as the overall market for housing starts has decreased and there is increased uncertainty in the housing market and the economy in general, although to date the negative impact on our Building Supply segment has been limited.</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;">Overall, the increase in sales of our PPE products resulting from the pandemic had a positive impact on our 2021 and, to a lesser extent, 2022 financial results. The extent of the pandemic&#x2019;s effect on our future operational and financial performance will depend in large part on future developments, including the duration, scope and severity of the pandemic and new variants, the actions taken to contain or mitigate its impact, the impact on governmental programs and budgets, the development of treatments or vaccines, and the efficacy of mass vaccinations, and the resumption of widespread economic activity in certain sectors. Due to the inherent uncertainty of the unprecedented evolving situation, we are unable to predict with any certainty the likely impact of the&#xa0;COVID-19 pandemic on our future operations.</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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</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: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: 20%; margin-left: 9pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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 March 31, </b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr 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; 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;">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: 16%; 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: 16%; 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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">36.1</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">36.5</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">31.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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">24.4</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.1</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">10.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;">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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">5.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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11.2</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">8.6</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 months ended March 31, 2023 compared to three months ended March 31, 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>Sales.</b> Consolidated sales for the quarter ended March 31, 2023 decreased to $13,800,000, from $17,661,000 for the quarter ended March 31, 2022, representing a decrease of $3,861,000, or 21.9%. This decrease consisted of decreased sales in both the Building Supply segment of $1,606,000 and the Disposable Protective Apparel segment of $2,255,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</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;">Building Supply segment sales for the quarter ended March 31, 2023 decreased by $1,606,000, or 15.7%, to $8,631,000, compared to $10,237,000 for the quarter ended March 31, 2022. The Building Supply segment decrease during the quarter ended March 31, 2023 was primarily due to a 6.9% decrease in sales of housewrap, a 28.7% decrease in sales of synthetic roof underlayment and a 5.6% decrease in sales of 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;">The sales mix of the Building Supply segment for the quarter ended March 31, 2023 was approximately 41% for synthetic roof underlayment, 45% for housewrap and 14% for other woven material. That is compared to approximately 48% for synthetic roof underlayment, 40% for housewrap and 12% for other woven material for the quarter ended March 31, 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: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt;">The Building Supply segment showed some weakness in sales in the first quarter of 2023, due to a significant decrease in demand for new home starts as a result of interest rates hikes and economic uncertainty, as well as high levels of inventory on the dealer and distributor side. In the first quarter of 2023, single family housing starts were down 28.6% compared to the same period a year ago. Overall, sales of housewrap products and accessories were down only 6.9%, which is much better than the slowdown in housing starts. Sales of our REX Wrap&#xae; and REX Wrap Plus&#xae;, our entry level housewrap products, were down 13.0%, despite the major decrease in housing starts as we have continued to acquire new dealers across the country. Management is encouraged by our growth opportunities in REX&#x2122; Wrap Fortis, our premium housewrap line, as we continue to make inroads into the multi-family and commercial construction sector as evidenced by an increase of 21.6% in sales in the first quarter of 2023. This is also evident with a 65% increase in sales of housewrap accessories, REXTREME Window and Door Flashing and REX&#x2122; Premium Seam Tape, in the first quarter of 2023. Based on product information provided to a growing number of architects who could specify our products as well as the number of jobs we are specified on and the growth of additional bids taking place, Management expects that we will see positive trends relative to the industry for both our entry level and premium housewrap 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;">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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Synthetic roof underlayment sales have been significantly affected by the factors mentioned above as well as a push in the market to reduce product selling prices. Synthetic roof underlayment sales were down 28.7% in the first quarter of 2023 compared to the first quarter of 2022, while our actual volume shipped has not been affected nearly as much due to price reductions. Management believes that as we move into the year, we should see a rebound in sales as inventory is alleviated at the dealer and distribution levels. In addition, we are preparing to launch our new line of self-adhered roofing products which we expect will bring additional revenue to our current synthetic roof underlayment line of products.</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;">There is uncertainty in the economy in relation to interest rates and a possible recession and the continued slowdown in building that could impact the Building Supply segment, but we are encouraged regarding the future growth potential for this 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</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;">Sales for the Disposable Protective Apparel segment for the quarter ended March 31, 2023 decreased by $2,255,000, or 30.4%, to $5,169,000, compared to $7,424,000 for the same period of 2022. This segment experienced an increase of 10.6% in sales of disposable protective garments, offset by a 75.2% decrease in sales of face masks and an 81.0% 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 March 31, 2023 was approximately 85% for disposable protective garments, 11% for face masks and 4% for face shields. This sales mix is compared to approximately 53% for disposable protective garments, 31% for face masks and 16% for face shields for the quarter ended March 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;">Sales of disposable protective garments in the first quarter of 2023 were up 10.6% as our channel partners and our end customers are working through their inventory and their ordering patterns return to normal. Face mask and face shield sales are still suffering from the COVID-19 residual excess inventories at the distributor level. Comparatively, sales of face masks and face shields were inordinately high during the first quarter of 2022 due to the ongoing demand for COVID-19 products.</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 three months ended March 31, 2023, our Disposable Protective Apparel sales and marketing team presented at numerous national trade shows and distributor meetings for the first time in three years. We are at a point where our team is now directly interacting with our channel partners and end-customers on a regular basis. We are also engaged in many product demonstrations and evaluations in the marketplace. To that end, we just signed an agreement with a larger channel partner and together, we expect to open new doors leading to organic growth.</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>Gross Profit</b>. Gross profit decreased by $1,460,000, or 22.7%, to $4,982,000 for the quarter ended March 31, 2023, from $6,442,000 for the quarter ended March 31, 2022. The gross profit margin was 36.1% for the quarter ended March 31, 2023, compared to 36.5% for the quarter ended March 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;">The gross profit margin is being negatively affected by inventory purchased during last year, which incurred high ocean freight and other transportation costs. Ocean freight rates have come down significantly since the latter part of the fourth quarter but our lower cost inventory will start to be sold in the coming months. Management expects the gross profit margin to improve in 2023, although continuing inflationary pressures could affect such improvements.</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 $7,000, or 0.2%, to $4,313,000 for the quarter ended March 31, 2023, from $4,306,000 for the quarter ended March 31, 2022. As a percentage of net sales, selling, general and administrative expenses increased to 31.3% for the quarter ended March 31, 2023, from 24.4% for the same period of 2022, primarily as a result of lower net sales.</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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

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

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#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 March 31, 2023 was as follows: Disposable Protective Apparel was up $22,000, or 1.8%; Building Supply was up $174,000, or 10.2%; and corporate unallocated expenses were down $189,000, or 13.9%. The increase in the Disposable Protective Apparel segment expenses was primarily related to marketing and sales travel expenses, partially offset by decreased employee compensation. The increase in the Building Supply segment expenses was related to increased employee compensation, insurance and travel expenses, partially offset by decreased commission expense. The decrease in corporate unallocated expenses was primarily due to decreased accrued bonuses, stock option and restricted stock expenses and foreign exchange expense.</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 $37,000 was accrued for the quarter ended March 31, 2023, compared to $104,000 for the quarter ended March 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;"><b>Depreciation and Amortization</b>. Depreciation and amortization expense increased by $31,000, or 14.6%, to $243,000 for the quarter ended March 31, 2023, from $212,000 for the quarter ended March 31, 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 decreased by $1,498,000, or 77.9%, to $426,000 for the quarter ended March 31, 2023, compared to $1,924,000 for the quarter ended March 31, 2022. The decreased income from operations was primarily due to a decrease in gross profit of $1,460,000, an increase in selling, general and administrative expenses of $7,000 and an increase in depreciation and amortization expense of $31,000. Income from operations as a percentage of net sales for the quarter ended March 31, 2023 was 3.1%, compared to 10.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;"><b>Other Income.</b> Other income increased by $217,000, to $267,000 for the quarter ended March 31, 2023, from $50,000 for the same period of 2022. The increase was primarily due to an increase in equity in income of unconsolidated affiliate of $60,000 and an increase in interest income of $157,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>Income before Provision for Income Taxes.</b> Income before provision for income taxes for the quarter ended March 31, 2023 was $693,000, compared to income before provision for income taxes of $1,974,000 for the same period of 2022, representing a decrease of $1,281,000, or 64.9%. This decrease in income before provision for income taxes was due to a decrease in income from operations of $1,498,000, partially offset by an increase in other income of $217,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 March 31, 2023 was $141,000, compared to $452,000 for the same period of 2022. The estimated effective tax rate was 20.3% for the quarter ended March 31, 2023, compared to 22.9% for the quarter ended March 31, 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;"><b>Net Income</b>. Net income for the quarter ended March 31, 2023 was $552,000, compared to net income of $1,522,000 for the same period of 2022, representing a decrease of $970,000, or 63.7%. The net income decrease comparing the first quarter of 2023 and 2022 was due to a decrease in income from operations of $1,498,000 partially offset by an increase in other income of $217,000, resulting in a decrease in income before provision for income taxes of $1,281,000, partially offset by a decrease in provision for income taxes of $311,000. Net income as a percentage of net sales for the quarter ended March 31, 2023 was 4.0%, and net income as a percentage of net sales for the same period of 2022 was 8.6%. Basic earnings per common share for the quarter ended March 31, 2023 and 2022 were $0.05 and $0.12, respectively. Diluted earnings per common share for the quarter ended March 31, 2023 and 2022 were $0.05 and $0.12, respectively.</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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

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

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#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 March 31, 2023, the Company had cash and cash equivalents (&#x201c;cash&#x201d;) of $13,821,000 and working capital of $50,086,000. As of March 31, 2023, the Company&#x2019;s current ratio (current assets/current liabilities) was 31:1, compared to a current ratio of 22:1 as of December 31, 2022. Cash decreased by 15.2%, or $2,469,000 to $13,821,000 as of March 31, 2023, compared to $16,290,000 as of December 31, 2022, and working capital decreased by $70,000 from $50,156,000 as of December 31, 2022. The decrease in cash from December 31, 2022, was due to cash used in operating activities of $1,697,000, cash used in investing activities of $289,000 and cash used in financing activities of $483,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 used in operating activities of $1,697,000 for the three months ended March 31, 2023 was due to net income of $552,000, as adjusted primarily by the following: stock-based compensation expense of $22,000, depreciation and amortization expense of $243,000, equity in income of unconsolidated affiliate of $109,000, operating lease expense net of accretion of $237,000, an increase in accounts receivable of $3,024,000, a decrease in accounts receivable related party of $865,000, a decrease in prepaid expenses of $190,000, a decrease in inventory of $303,000, a decrease in accounts payable and accrued liabilities of $737,000, and a decrease in lease liabilities of $239,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 $2,159,000, or 31.0%, to $9,132,000 as of March 31, 2023, from $6,973,000 as of December 31, 2022. The increase in accounts receivable was primarily related to increased payment terms to our major international channel partner and to higher sales in March 2023 compared to December 2022. The number of days that sales remained outstanding as of March 31, 2023, calculated by using an average of accounts receivable outstanding and annual revenue, was 40 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 $303,000, or 1.2%, to $24,094,000 as of March 31, 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 $181,000, or 1.3%, to $14,204,000 and a decrease in inventory for the Building Supply segment of $122,000, or 1.2%, to $9,890,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 $190,000, or 3.9%, to $4,712,000 as of March 31, 2023, from $4,902,000 as of December 31, 2022. The decrease was primarily due to decreased prepaid inventory, partially offset by increased prepayments for insurance.</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 March 31, 2023, decreased by $237,000 to $1,488,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>

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Lease liabilities as of March 31, 2023, decreased by $239,000 to $1,535,000 from $1,774,000 as of December 31, 2022. The decrease in the lease liabilities was the result of lease payments made during the year.</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 March 31, 2023 decreased by $737,000, or 48.9%, to $770,000, from $1,507,000 as of December 31, 2022. The decrease was primarily due to a decrease in accrued bonuses and payroll.</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 $289,000 for the three months ended March 31, 2023, compared to net cash used in investing activities of $133,000 for the same period of 2022. Investing activities for the three months ended March 31, 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 $483,000 for the three months ended March 31, 2023, compared to net cash used in financing activities of $756,000 for the same period of 2022. Net cash used in financing activities for the three months ended March 31, 2023 resulted from the payment of $833,000 for the repurchase of common stock partially offset by the proceeds of $350,000 from the exercise of stock options. Net cash used in financing activities for the three months ended March 31, 2022 resulted from the payment of $756,000 for the repurchase of common stocks.</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 March 31, 2023, we had $1,362,000 available for additional stock purchases under our stock repurchase program. During the three months ended March 31, 2023, we repurchased 200,000 shares of common stock at a cost of $833,000. As of March 31, 2023, we had repurchased a total of 19,660,617 shares of common stock at a cost of approximately $47,158,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>

<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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

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

<hr style="height: 1px; color: #000000; background-color: #000000; width: 100%; border: none; margin: 3pt 0" />
<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#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:Times New Roman;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 new standards that it believes merit further discussion at this time.</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.&#xa0; 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.&#xa0; 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 March 31, 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>

<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>

<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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#xa0;</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>PART II.&#xa0; 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.&#xa0; 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 March 31, 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 in 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 March 31, 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.&#xa0; 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.&#xa0; 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>

<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 style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%;">&#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: 49%;">
			<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 style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 32%; 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</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>
			</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</b></b></p>

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

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>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: 32%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">January 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: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">79,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; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.11</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: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">79,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; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,868,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: 32%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">February 1 - 28, 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: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">28,300</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: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.22</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: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">28,300</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;">1,748,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: 32%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">March 1 - 31, 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: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">92,700</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;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4.12</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; 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);">92,700</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;">&#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;">1,362,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: 32%;">&#xa0;</td>
			<td style="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: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">200,000</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: 13%; 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; margin-left: 0pt;">&#xa0;</td>
			<td style="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: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">200,000</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: 16%;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; width: 1%;">&#xa0;</td>
		</tr>

</tbody></table>

<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;">(1) On December 15, 2022, 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 of 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 $48,520,000 of common stock, of which $1,362,000 was available for repurchase as of March 31, 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;">23</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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

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

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

		<tbody><tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;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&#xa0;(File No. 001-15725).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_515016.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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_515017.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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_515022.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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;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%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_515023.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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt 0pt 0pt 5pt;">101</p>
			</td>
			<td style="vertical-align: top; width: 90%;">
			<p style="font-family:Times New Roman;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 March 31, 2023, formatted in Inline XBRL.</p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt 0pt 0pt 5pt;">104</p>
			</td>
			<td style="vertical-align: top; width: 90%;">
			<p style="font-family:Times New Roman;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%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 90%;">(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;">24</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 TOCLink" style="text-align: left; 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;">Alpha Pro Tech, Ltd.</div>
</div>
</div>
</div>

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

<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;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;">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>

<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="vertical-align: top; width: 4%;">&#xa0;</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">ALPHA PRO TECH, LTD.</p>
			</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">&#xa0;</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">&#xa0;</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;DATE:</p>
			</td>
			<td style="vertical-align: top; width: 33%; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 9pt;">May 10, 2023</p>
			</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">BY:</p>
			</td>
			<td style="vertical-align: top; width: 35%; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 9pt;">/s/ Lloyd Hoffman</p>
			</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">&#xa0;</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">&#xa0;</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>
			</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 9pt;">Lloyd Hoffman</p>
			</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>
			</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 9pt;">President and Chief Executive Officer</p>
			</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">&#xa0;</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">&#xa0;</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">&#xa0;</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">&#xa0;</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;DATE:</p>
			</td>
			<td style="vertical-align: top; width: 33%; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 9pt;">May 10, 2023</p>
			</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">BY:</p>
			</td>
			<td style="vertical-align: top; width: 35%; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 9pt;">&#xa0;/s/ Colleen McDonald</p>
			</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">&#xa0;</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">&#xa0;</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>
			</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 9pt;">Colleen McDonald</p>
			</td>
			<td style="vertical-align: top; width: 15%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">&#xa0;</p>
			</td>
			<td style="vertical-align: top; width: 33%;">&#xa0;</td>
			<td style="vertical-align: top; width: 10%;">&#xa0;</td>
			<td style="vertical-align: top; width: 3%;">&#xa0;</td>
			<td style="vertical-align: top; width: 35%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 9pt;">Chief Financial Officer</p>
			</td>
			<td style="vertical-align: top; width: 15%;">&#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 0pt 0pt 5pt;">&#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;">25</div>
</div>
</div>
</div>


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


</head>
<body style="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: justify; 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>&nbsp;&nbsp;</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;</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: 36pt;">
			<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: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">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: 36pt;">
			<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: 36pt;">
			<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: 36pt;">
			<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: 36pt;">&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: 36pt;">&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: 36pt;">&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: 36pt;">&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: 36pt;">
			<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: 36pt;">&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: 36pt;">&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>

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

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

		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">DATE:</td>
			<td style="vertical-align: top; width: 33%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; 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: justify; margin: 0pt 0pt 0pt 18pt;">May 10, 2023 &nbsp;&nbsp;&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; 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;">BY:</p>
			</td>
			<td style="vertical-align: top; width: 35%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; 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: justify; margin: 0pt 0pt 0pt 9pt;">/s/ Lloyd Hoffman</p>
			</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 33%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 35%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 33%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 35%; 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 0pt 0pt 9pt;">Lloyd Hoffman</p>
			</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 33%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 35%; 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 0pt 0pt 9pt;">President and Chief Executive Officer</p>
			</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 33%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 35%; 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 0pt 0pt 9pt;">(Principal Executive Officer)</p>
			</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</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;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_515017.htm
<DESCRIPTION>EXHIBIT 31.2
<TEXT>
<html><head>
	<title></title>


</head>
<body style="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: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 0pt 0pt 5pt;">&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;">&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: 36pt;">
			<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: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">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: 36pt;">
			<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: 36pt;">
			<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: 36pt;">
			<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: 36pt;">&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: 36pt;">&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: 36pt;">&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: 36pt;">&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: 36pt;">
			<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: 36pt;">&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: 36pt;">&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>

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

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

		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">DATE:</p>
			</td>
			<td style="vertical-align: top; width: 33%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); padding-left: 18pt;">May 10, 2023</td>
			<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: justify; margin: 0pt;">&nbsp;&nbsp;&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 3%; 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;">BY:</p>
			</td>
			<td style="vertical-align: top; width: 35%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; 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: justify; margin: 0pt 0pt 0pt 9pt;">&nbsp;/s/Colleen McDonald</p>
			</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 33%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 35%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 33%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 35%; 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 0pt 0pt 9pt;">Colleen McDonald</p>
			</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 33%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 35%; 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 0pt 0pt 9pt;">Chief Financial Officer</p>
			</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 33%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 3%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 35%; 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 0pt 0pt 9pt;">(Principal Financial and Accounting Officer)</p>
			</td>
			<td style="vertical-align: top; width: 15%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</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;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_515022.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<html><head>
	<title></title>


</head>
<body style="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;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;text-align:center;margin:0pt 0pt 0pt 5pt;">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 0pt 0pt 5pt;">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 0pt 0pt 5pt;">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 0pt 0pt 5pt;">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;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 March 31, 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>

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

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

		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">DATE:</p>
			</td>
			<td style="vertical-align: top; width: 31%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); padding-left: 9pt;">May 10, 2023 &nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 5%; 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;">BY:</p>
			</td>
			<td style="vertical-align: top; width: 40%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; 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: justify; margin: 0pt;">/s/ Lloyd Hoffman</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 31%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 40%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 31%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 40%; 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 0pt 0pt 9pt;">&nbsp;Lloyd Hoffman</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 31%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 40%; 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 0pt 0pt 9pt;">&nbsp;President and Chief Executive Officer</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</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;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.2
<SEQUENCE>5
<FILENAME>ex_515023.htm
<DESCRIPTION>EXHIBIT 32.2
<TEXT>
<html><head>
	<title></title>


</head>
<body style="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;margin:0pt;">&nbsp;</p>

<p style="font-family: Times New Roman; 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 0pt 0pt 5pt;">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 0pt 0pt 5pt;">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 0pt 0pt 5pt;">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 0pt 0pt 5pt;">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;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 March 31, 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>

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

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

		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">DATE:</p>
			</td>
			<td style="vertical-align: top; width: 31%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; 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: justify; margin: 0pt 0pt 0pt 9pt;">May 10, 2023</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 5%; 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;">BY:</p>
			</td>
			<td style="vertical-align: top; width: 40%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; 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: justify; margin: 0pt;">/s/ Colleen McDonald</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 4%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 31%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 40%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 31%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 40%; 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 0pt 0pt 9pt;">&nbsp;Colleen McDonald</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
		</tr>
		<tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">
			<td style="vertical-align: top; width: 4%; 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;">&nbsp;</p>
			</td>
			<td style="vertical-align: top; width: 31%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 5%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</td>
			<td style="vertical-align: top; width: 40%; 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 0pt 0pt 9pt;">&nbsp;Chief Financial Officer</p>
			</td>
			<td style="vertical-align: top; width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">&nbsp;</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>

<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-20230331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 03:39PM UTC 2023-05-10--><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:apt="http://www.alphaprotech.com/20230331" 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/20230331">
  <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-20230331_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-20230331_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-20230331_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-20230331_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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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/20230331/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 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_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-details9DA813B4-0B6E-4F20-B01B-86589D5BD2D1" name="statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details9DA813B4-0B6E-4F20-B01B-86589D5BD2D1" 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.CAL
<SEQUENCE>7
<FILENAME>apt-20230331_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 03:39PM UTC 2023-05-10--><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/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="extended">
    <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_GrossProfit" 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_OperatingExpenses" 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_InterestIncomeExpenseNonoperatingNet" 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_IncomeLossFromEquityMethodInvestments" 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_NonoperatingIncomeExpense" 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_OperatingIncomeLoss" 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_IncomeLossAttributableToParent" 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_IncomeTaxExpenseBenefit" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="extended">
    <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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" 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="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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_IncreaseDecreaseInPrepaidExpense" 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="us-gaap_ShareBasedCompensation" 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_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" 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_DepreciationDepletionAndAmortization" 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_IncreaseDecreaseInOperatingLeaseLiability" 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_IncomeLossFromEquityMethodInvestments" 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="apt_OperatingLeaseExpenseNetOfAccretion" 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_IncreaseDecreaseInAccountsReceivable" 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_IncreaseDecreaseInDueFromRelatedParties" 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_IncreaseDecreaseInInventories" 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_NetIncomeLoss" 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="us-gaap_PaymentsForRepurchaseOfCommonStock" 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="apt_ProceedsFromPaymentsForStockOptionsExercised" 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/20230331/role/statement-note-5-inventories-inventories-details" xlink:href="apt-20230331.xsd#statement-note-5-inventories-inventories-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230331/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_InventoryWorkInProcessNetOfReserves" 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_InventoryFinishedGoodsNetOfReserves" 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_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/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-20230331.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/20230331/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/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:href="apt-20230331.xsd#statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://www.alphaprotech.com/20230331/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_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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" 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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" 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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>8
<FILENAME>apt-20230331_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 03:39PM UTC 2023-05-10--><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/20230331/role/statement-note-16-subsequent-events" xlink:href="apt-20230331.xsd#statement-note-16-subsequent-events" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-14-income-taxes" xlink:href="apt-20230331.xsd#statement-note-14-income-taxes" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-12-related-party-transactions" xlink:href="apt-20230331.xsd#statement-note-12-related-party-transactions" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-4-recent-accounting-pronouncements" xlink:href="apt-20230331.xsd#statement-note-4-recent-accounting-pronouncements" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:href="apt-20230331.xsd#statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-1-the-company" xlink:href="apt-20230331.xsd#statement-note-1-the-company" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-document-and-entity-information" xlink:href="apt-20230331.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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_EntityAddressCityOrTown" 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_EntityAddressStateOrProvince" 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_EntityAddressCountry" 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_EntityAddressPostalZipCode" 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/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" 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_RelatedAndNonrelatedPartyStatusAxis" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusDomain-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_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_RelatedAndNonrelatedPartyStatusAxis" xlink:to="us-gaap_RelatedAndNonrelatedPartyStatusDomain" 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_RelatedAndNonrelatedPartyStatusAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedAndNonrelatedPartyStatusDomain" 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_RelatedAndNonrelatedPartyStatusAxis" xlink:to="us-gaap_RelatedAndNonrelatedPartyStatusDomain-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_RelatedAndNonrelatedPartyStatusDomain" 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_AssetsCurrentAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Goodwill" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Assets" 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_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="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" 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_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/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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_RelatedAndNonrelatedPartyStatusAxis" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusDomain-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_RelatedAndNonrelatedPartyStatusAxis" xlink:to="us-gaap_RelatedAndNonrelatedPartyStatusDomain" 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_RelatedAndNonrelatedPartyStatusAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_RelatedAndNonrelatedPartyStatusDomain" 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_RelatedAndNonrelatedPartyStatusAxis" xlink:to="us-gaap_RelatedAndNonrelatedPartyStatusDomain-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/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-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_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="us-gaap_IncomeLossFromEquityMethodInvestments" 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_InterestIncomeExpenseNonoperatingNet" 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_NonoperatingIncomeExpense" 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_IncomeLossAttributableToParent" 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_IncomeTaxExpenseBenefit" 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_NetIncomeLoss" 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_EarningsPerShareBasic" 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_EarningsPerShareDiluted" 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_WeightedAverageNumberOfSharesOutstandingBasic" 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_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-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_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_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_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="us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" 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/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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_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:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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_NetCashProvidedByUsedInFinancingActivities" 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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" 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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation" xlink:href="apt-20230331.xsd#statement-note-3-stockbased-compensation" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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="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_PlanNameDomain" xlink:to="apt_IncentivePlan2020Member" 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/20230331/role/statement-note-5-inventories" xlink:href="apt-20230331.xsd#statement-note-5-inventories" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:href="apt-20230331.xsd#statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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/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="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/20230331/role/statement-note-7-accrued-liabilities" xlink:href="apt-20230331.xsd#statement-note-7-accrued-liabilities" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:href="apt-20230331.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-9-accumulated-other-comprehensive-loss" xlink:href="apt-20230331.xsd#statement-note-9-accumulated-other-comprehensive-loss" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-10-activity-of-business-segments" xlink:href="apt-20230331.xsd#statement-note-10-activity-of-business-segments" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-11-financial-information-about-geographic-areas" xlink:href="apt-20230331.xsd#statement-note-11-financial-information-about-geographic-areas" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:label="apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-13-leases-" xlink:href="apt-20230331.xsd#statement-note-13-leases-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-15-contingencies" xlink:href="apt-20230331.xsd#statement-note-15-contingencies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-3-stockbased-compensation-tables" xlink:href="apt-20230331.xsd#statement-note-3-stockbased-compensation-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-5-inventories-tables" xlink:href="apt-20230331.xsd#statement-note-5-inventories-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-7-accrued-liabilities-tables" xlink:href="apt-20230331.xsd#statement-note-7-accrued-liabilities-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:href="apt-20230331.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-10-activity-of-business-segments-tables" xlink:href="apt-20230331.xsd#statement-note-10-activity-of-business-segments-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables" xlink:href="apt-20230331.xsd#statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-13-leases-tables" xlink:href="apt-20230331.xsd#statement-note-13-leases-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-3-stockbased-compensation-details-textual" xlink:href="apt-20230331.xsd#statement-note-3-stockbased-compensation-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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="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_PlanNameDomain" xlink:to="apt_IncentivePlan2020Member" 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/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:href="apt-20230331.xsd#statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-5-inventories-inventories-details" xlink:href="apt-20230331.xsd#statement-note-5-inventories-inventories-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:href="apt-20230331.xsd#statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ExpenseToAcquireInventory" xlink:label="apt_ExpenseToAcquireInventory" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_NumberOfStoresOwned" xlink:label="apt_NumberOfStoresOwned" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_NumberOfStoresRented" xlink:label="apt_NumberOfStoresRented" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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/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="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/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:href="apt-20230331.xsd#statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/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-20230331.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/20230331/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_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" 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:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" 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_EarningsPerShareAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:href="apt-20230331.xsd#statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-10-activity-of-business-segments-details-textual" xlink:href="apt-20230331.xsd#statement-note-10-activity-of-business-segments-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:href="apt-20230331.xsd#statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:href="apt-20230331.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/20230331/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-20230331.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:href="apt-20230331.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/20230331/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-20230331.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:href="apt-20230331.xsd#statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:href="apt-20230331.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/20230331/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-20230331.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/20230331/role/statement-note-13-leases-details-textual" xlink:href="apt-20230331.xsd#statement-note-13-leases-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:href="apt-20230331.xsd#statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/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_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_LesseeOperatingLeaseLiabilityPaymentsDue" 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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" 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_OperatingLeaseLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual" xlink:href="apt-20230331.xsd#statement-note-15-contingencies-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_DepositPaidForEquipmentWriteoff" xlink:label="apt_DepositPaidForEquipmentWriteoff" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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>9
<FILENAME>apt-20230331_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 03:39PM UTC 2023-05-10--><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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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">Other comprehensive income (loss)- foreign currency translation gain (loss)</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-20230331.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-20230331.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-20230331.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-20230331.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-20230331.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 (in shares)</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-20230331.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">Consolidated 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; 12,135,556 and 12,226,306 shares outstanding as of March 31, 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 used in 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: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, Total</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">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" 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-20230331.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-20230331.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-20230331.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-20230331.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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares (denominator):</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract-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">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</link:label>
    <link:label xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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_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</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_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AssetsCurrentAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current assets:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract-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">Net income loss</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">Decrease in cash</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 Contingencies</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:</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 used in 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-20230331.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-20230331.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="apt-20230331.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-20230331.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_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings per common share:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract-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 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-20230331.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-20230331.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-20230331.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="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.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related and Nonrelated Party Status [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:to="us-gaap_RelatedAndNonrelatedPartyStatusDomain-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">us-gaap_CommonStockSharesOutstanding</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Outstanding, Ending Balance (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 as of December 31, 2022 (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 as of March 31, 2023 (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.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedAndNonrelatedPartyStatusAxis" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related and Nonrelated Party Status [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedAndNonrelatedPartyStatusAxis" xlink:to="us-gaap_RelatedAndNonrelatedPartyStatusAxis-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-20230331.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-20230331.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-20230331.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: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_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_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_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-20230331.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 as of December 31, 2022</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 as of March 31, 2023</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-20230331.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">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:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>10
<FILENAME>apt-20230331_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 03:39PM UTC 2023-05-10--><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/20230331/role/statement-note-16-subsequent-events" xlink:href="apt-20230331.xsd#statement-note-16-subsequent-events" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-16-subsequent-events" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-14-income-taxes" xlink:href="apt-20230331.xsd#statement-note-14-income-taxes" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-14-income-taxes" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-12-related-party-transactions" xlink:href="apt-20230331.xsd#statement-note-12-related-party-transactions" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-12-related-party-transactions" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-4-recent-accounting-pronouncements" xlink:href="apt-20230331.xsd#statement-note-4-recent-accounting-pronouncements" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-4-recent-accounting-pronouncements" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:href="apt-20230331.xsd#statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-1-the-company" xlink:href="apt-20230331.xsd#statement-note-1-the-company" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-1-the-company" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-document-and-entity-information" xlink:href="apt-20230331.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/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_EntityAddressCityOrTown" 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_EntityAddressStateOrProvince" 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_EntityAddressCountry" 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_EntityAddressPostalZipCode" 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/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/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_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" 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_RelatedAndNonrelatedPartyStatusAxis" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusDomain" 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_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_RelatedAndNonrelatedPartyStatusAxis" xlink:to="us-gaap_RelatedAndNonrelatedPartyStatusDomain" 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_RelatedAndNonrelatedPartyStatusAxis" 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_RelatedAndNonrelatedPartyStatusAxis" 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_RelatedAndNonrelatedPartyStatusAxis" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" 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_AssetsCurrentAbstract" xlink:to="us-gaap_Assets-3" 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_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="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_LiabilitiesCurrentAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" 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_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/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/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-2" 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-2" 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_RelatedAndNonrelatedPartyStatusAxis" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RelatedAndNonrelatedPartyStatusDomain" xlink:label="us-gaap_RelatedAndNonrelatedPartyStatusDomain" 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_RelatedAndNonrelatedPartyStatusAxis" xlink:to="us-gaap_RelatedAndNonrelatedPartyStatusDomain" 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_RelatedAndNonrelatedPartyStatusAxis" 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_RelatedAndNonrelatedPartyStatusAxis" 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/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-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_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/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-income-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-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_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="us-gaap_IncomeLossFromEquityMethodInvestments" 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_InterestIncomeExpenseNonoperatingNet" 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_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense-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_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeLossAttributableToParent-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_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:presentationArc order="5" 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="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_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_EarningsPerShareBasic" 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_EarningsPerShareDiluted" 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_WeightedAverageNumberOfSharesOutstandingBasic" 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_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-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_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_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_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/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="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/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/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_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-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/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="10" 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/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="apt-20230331.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_OperatingLeaseExpenseNetOfAccretion" xlink:label="apt_OperatingLeaseExpenseNetOfAccretion" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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/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="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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-3" xlink:type="arc"/>
    <link:presentationArc order="4" 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="5" 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/20230331/role/statement-note-3-stockbased-compensation" xlink:href="apt-20230331.xsd#statement-note-3-stockbased-compensation" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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_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_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/20230331/role/statement-note-5-inventories" xlink:href="apt-20230331.xsd#statement-note-5-inventories" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-5-inventories" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:href="apt-20230331.xsd#statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_NotesToFinancialStatementsAbstract" xlink:label="apt_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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_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_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/20230331/role/statement-note-7-accrued-liabilities" xlink:href="apt-20230331.xsd#statement-note-7-accrued-liabilities" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:href="apt-20230331.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-9-accumulated-other-comprehensive-loss" xlink:href="apt-20230331.xsd#statement-note-9-accumulated-other-comprehensive-loss" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-10-activity-of-business-segments" xlink:href="apt-20230331.xsd#statement-note-10-activity-of-business-segments" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-11-financial-information-about-geographic-areas" xlink:href="apt-20230331.xsd#statement-note-11-financial-information-about-geographic-areas" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:label="apt_FinancialInformationAboutGeographicAreasTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-13-leases-" xlink:href="apt-20230331.xsd#statement-note-13-leases-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-13-leases-" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-15-contingencies" xlink:href="apt-20230331.xsd#statement-note-15-contingencies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-3-stockbased-compensation-tables" xlink:href="apt-20230331.xsd#statement-note-3-stockbased-compensation-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-5-inventories-tables" xlink:href="apt-20230331.xsd#statement-note-5-inventories-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-7-accrued-liabilities-tables" xlink:href="apt-20230331.xsd#statement-note-7-accrued-liabilities-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:href="apt-20230331.xsd#statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-10-activity-of-business-segments-tables" xlink:href="apt-20230331.xsd#statement-note-10-activity-of-business-segments-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables" xlink:href="apt-20230331.xsd#statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-13-leases-tables" xlink:href="apt-20230331.xsd#statement-note-13-leases-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-3-stockbased-compensation-details-textual" xlink:href="apt-20230331.xsd#statement-note-3-stockbased-compensation-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_IncentivePlan2020Member" xlink:label="apt_IncentivePlan2020Member" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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_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_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/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:href="apt-20230331.xsd#statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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-n8" 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/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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod-n8" 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/20230331/role/statement-note-5-inventories-inventories-details" xlink:href="apt-20230331.xsd#statement-note-5-inventories-inventories-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:href="apt-20230331.xsd#statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_AlphaProTechEngineeredProductsMember" xlink:label="apt_AlphaProTechEngineeredProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate" xlink:label="apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ExpenseToAcquireInventory" xlink:label="apt_ExpenseToAcquireInventory-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_HarmonyMember" xlink:label="apt_HarmonyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingBuildingProductsMember" xlink:label="apt_ManufacturingBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:label="apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_ManufacturingOfBuildingProductsMember" xlink:label="apt_ManufacturingOfBuildingProductsMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_MapleIndustriesAndAssociatesMember" xlink:label="apt_MapleIndustriesAndAssociatesMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_NoteToFinancialStatementDetailsTextual" xlink:label="apt_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_NumberOfStoresOwned" xlink:label="apt_NumberOfStoresOwned-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_NumberOfStoresRented" xlink:label="apt_NumberOfStoresRented-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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_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_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_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/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:href="apt-20230331.xsd#statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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" 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/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/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-20230331.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/20230331/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-20230331.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_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" 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:loc xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding-3" 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_EarningsPerShareAbstract" 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_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareBasic" 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_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:href="apt-20230331.xsd#statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-10-activity-of-business-segments-details-textual" xlink:href="apt-20230331.xsd#statement-note-10-activity-of-business-segments-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:href="apt-20230331.xsd#statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details" xlink:href="apt-20230331.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/20230331/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-20230331.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details" xlink:href="apt-20230331.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/20230331/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-20230331.xsd#apt_BuildingSupplyMember" xlink:label="apt_BuildingSupplyMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_DisposableProtectiveApparelMember" xlink:label="apt_DisposableProtectiveApparelMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_TotalConsolidatedAssets" xlink:label="apt_TotalConsolidatedAssets" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:href="apt-20230331.xsd#statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details" xlink:href="apt-20230331.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/20230331/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-20230331.xsd#apt_InternationalMember" xlink:label="apt_InternationalMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-13-leases-details-textual" xlink:href="apt-20230331.xsd#statement-note-13-leases-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:href="apt-20230331.xsd#statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.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_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-n0" 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/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="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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n0" 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_OperatingLeaseLiability" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual" xlink:href="apt-20230331.xsd#statement-note-15-contingencies-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual" xlink:type="extended">
    <link:loc xlink:href="apt-20230331.xsd#apt_DepositPaidForEquipmentWriteoff" xlink:label="apt_DepositPaidForEquipmentWriteoff-2" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.xsd#apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:label="apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="apt-20230331.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>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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654340592">
<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">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>May 02, 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">Mar. 31,  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">60 Centurian Drive, Suite 112<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Markham<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">ON<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityAddressCountry', window );">Entity Address, Country</a></td>
<td class="text">CA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">L3R 9R2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">$0.01 par value<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">12,188,206<span></span>
</td>
</tr>
<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">Q1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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.1</span><table class="report" border="0" cellspacing="2" id="idm140046652400192">
<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>Mar. 31, 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_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></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_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 13,821,000<span></span>
</td>
<td class="nump">$ 16,290,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="re">
<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">24,094,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 class="ro">
<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,712,000<span></span>
</td>
<td class="nump">4,902,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">51,759,000<span></span>
</td>
<td class="nump">52,562,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_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">5,788,000<span></span>
</td>
<td class="nump">5,742,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">55,000<span></span>
</td>
<td class="nump">55,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_FiniteLivedIntangibleAssetsNet', window );">Definite-lived intangible assets, net</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="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 );">Right-of-use assets</a></td>
<td class="nump">1,488,000<span></span>
</td>
<td class="nump">1,725,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_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures', window );">Equity investment in unconsolidated affiliate</a></td>
<td class="nump">4,964,000<span></span>
</td>
<td class="nump">4,718,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">64,055,000<span></span>
</td>
<td class="nump">64,803,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_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></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_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">383,000<span></span>
</td>
<td class="nump">674,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_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">387,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 class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Lease liabilities</a></td>
<td class="nump">903,000<span></span>
</td>
<td class="nump">899,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">1,673,000<span></span>
</td>
<td class="nump">2,406,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Lease liabilities, net of current portion</a></td>
<td class="nump">632,000<span></span>
</td>
<td class="nump">875,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_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income tax liabilities, net</a></td>
<td class="nump">764,000<span></span>
</td>
<td class="nump">764,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_Liabilities', window );">Total liabilities</a></td>
<td class="nump">3,069,000<span></span>
</td>
<td class="nump">4,045,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_CommitmentsAndContingencies', window );">Commitments and Contingencies</a></td>
<td class="text"> <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_StockholdersEquityAbstract', window );"><strong>Shareholders' equity:</strong></a></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_CommonStockValue', window );">Common stock, $.01 par value: 50,000,000 shares authorized; 12,135,556 and 12,226,306 shares outstanding as of March 31, 2023 and December 31, 2022, respectively</a></td>
<td class="nump">122,000<span></span>
</td>
<td class="nump">123,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="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,216,000<span></span>
</td>
<td class="nump">62,124,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_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(1,352,000)<span></span>
</td>
<td class="num">(1,489,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_StockholdersEquity', window );">Total shareholders' equity</a></td>
<td class="nump">60,986,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="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,055,000<span></span>
</td>
<td class="nump">64,803,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></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_RelatedAndNonrelatedPartyStatusAxis=us-gaap_NonrelatedPartyMember', window );">Nonrelated Party [Member]</a></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_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></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_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowance for doubtful accounts</a></td>
<td class="nump">8,406,000<span></span>
</td>
<td class="nump">5,382,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></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_RelatedAndNonrelatedPartyStatusAxis=us-gaap_RelatedPartyMember', window );">Related Party [Member]</a></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_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></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_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowance for doubtful accounts</a></td>
<td class="nump">$ 726,000<span></span>
</td>
<td class="nump">$ 1,591,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_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_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<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 1<br> -Subparagraph (SX 210.6-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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_RelatedAndNonrelatedPartyStatusAxis=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_RelatedAndNonrelatedPartyStatusAxis=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_RelatedAndNonrelatedPartyStatusAxis=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_RelatedAndNonrelatedPartyStatusAxis=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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654280352">
<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>Mar. 31, 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, Ending Balance (in shares)</a></td>
<td class="nump">12,135,556<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_RelatedAndNonrelatedPartyStatusAxis=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_RelatedAndNonrelatedPartyStatusAxis=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_RelatedAndNonrelatedPartyStatusAxis=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.1</span><table class="report" border="0" cellspacing="2" id="idm140046745450848">
<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>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 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 );">Net sales</a></td>
<td class="nump">$ 13,800,000<span></span>
</td>
<td class="nump">$ 17,661,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">8,818,000<span></span>
</td>
<td class="nump">11,219,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">4,982,000<span></span>
</td>
<td class="nump">6,442,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>
</tr>
<tr class="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,313,000<span></span>
</td>
<td class="nump">4,306,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">243,000<span></span>
</td>
<td class="nump">212,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,556,000<span></span>
</td>
<td class="nump">4,518,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">426,000<span></span>
</td>
<td class="nump">1,924,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:</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_IncomeLossFromEquityMethodInvestments', window );">Equity in income of unconsolidated affiliate</a></td>
<td class="nump">109,000<span></span>
</td>
<td class="nump">49,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_InterestIncomeExpenseNonoperatingNet', window );">Interest income, net</a></td>
<td class="nump">158,000<span></span>
</td>
<td class="nump">1,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_NonoperatingIncomeExpense', window );">Total other income</a></td>
<td class="nump">267,000<span></span>
</td>
<td class="nump">50,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_IncomeLossAttributableToParent', window );">Income before provision for income taxes</a></td>
<td class="nump">693,000<span></span>
</td>
<td class="nump">1,974,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">141,000<span></span>
</td>
<td class="nump">452,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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 552,000<span></span>
</td>
<td class="nump">$ 1,522,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_EarningsPerShareBasic', window );">Basic earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.05<span></span>
</td>
<td class="nump">$ 0.12<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.05<span></span>
</td>
<td class="nump">$ 0.12<span></span>
</td>
</tr>
<tr class="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">12,150,067<span></span>
</td>
<td class="nump">13,058,871<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding (in shares)</a></td>
<td class="nump">12,193,602<span></span>
</td>
<td class="nump">13,159,490<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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.1</span><table class="report" border="0" cellspacing="2" id="idm140046655432512">
<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>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 552,000<span></span>
</td>
<td class="nump">$ 1,522,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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)- foreign currency translation gain (loss)</a></td>
<td class="nump">137,000<span></span>
</td>
<td class="num">(153,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">$ 689,000<span></span>
</td>
<td class="nump">$ 1,369,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/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>
<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>
</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.1</span><table class="report" border="0" cellspacing="2" id="idm140046647226384">
<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 as of December 31, 2022 (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 as of December 31, 2022 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 );">Other comprehensive income (loss)- foreign currency translation gain (loss)</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="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="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 as of March 31, 2023 (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 as of March 31, 2023 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 as of December 31, 2022 (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 as of December 31, 2022 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">(22,000)<span></span>
</td>
<td class="num">(809,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="nump">109,250<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="text">&#160;<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 );">Other comprehensive income (loss)- foreign currency translation gain (loss)</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">137,000<span></span>
</td>
<td class="nump">$ 137,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 as of March 31, 2023 (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="nump">12,135,556<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 as of March 31, 2023 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><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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654243392">
<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">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 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_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">$ 552,000<span></span>
</td>
<td class="nump">$ 1,522,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 used in 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">22,000<span></span>
</td>
<td 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_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">243,000<span></span>
</td>
<td class="nump">212,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">(109,000)<span></span>
</td>
<td class="num">(49,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">237,000<span></span>
</td>
<td class="nump">228,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">(3,024,000)<span></span>
</td>
<td class="num">(3,814,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">865,000<span></span>
</td>
<td class="num">(214,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">303,000<span></span>
</td>
<td class="nump">1,086,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">190,000<span></span>
</td>
<td class="nump">736,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">(737,000)<span></span>
</td>
<td class="num">(714,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">(239,000)<span></span>
</td>
<td class="num">(227,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 used in operating activities</a></td>
<td class="num">(1,697,000)<span></span>
</td>
<td class="num">(1,179,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">(289,000)<span></span>
</td>
<td class="num">(133,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">(289,000)<span></span>
</td>
<td class="num">(133,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">350,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Repurchase of common stock</a></td>
<td class="num">(833,000)<span></span>
</td>
<td class="num">(756,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_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(483,000)<span></span>
</td>
<td class="num">(756,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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Decrease in cash</a></td>
<td class="num">(2,469,000)<span></span>
</td>
<td class="num">(2,068,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, 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="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, end of the period</a></td>
<td class="nump">$ 13,821,000<span></span>
</td>
<td class="nump">$ 14,239,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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046656305792">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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: &quot;Times New Roman&quot;, 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657279536">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 months ended March 31, 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 includes 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 March 31, 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657281200">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 21pt;">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 provides 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. Due to the cancelation and expiration of options, the 2004 Plan had 1,305,251 options available to grant at the time the 2004 Plan was replaced in 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 three months ended March 31, 2023 and 2022, <span style="-sec-ix-hidden:c320"><span style="-sec-ix-hidden:c321">no</span></span> stock options were granted under the 2004 Option Plan or the 2020 Incentive Plan. The Company recognized $3,000 and $28,000 in stock-based compensation expense for the three months ended March 31, 2023 and 2022, respectively, related to outstanding options previously granted under the 2004 Option Plan. For the three months ended March 31, 2023 and 2022, no restricted stock awards were granted under the 2020 Incentive Plan. The Company recognized $18,000 and $27,000 in compensation expense associated with outstanding restricted stock awards for the three months ended March 31, 2023 and 2022, respectively. As of March 31, 2023, $44,000 of total unrecognized compensation cost related to outstanding restricted stock awards was expected to be recognized over a weighted-average remainder period of 0.63 years.</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 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:c348">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 three months ended March 31, 2023:</p>

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


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

		<tbody><tr 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 style="font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></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>Weighted Average</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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 style="font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></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>Exercise Price</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>Options</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>Per Option</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: 64%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, December 31, 2022</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">410,615</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.50</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 0pt 0pt 9pt;">Granted to employees and non-employee directors</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: 15%; 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;">&#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: 15%; 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;">&#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;">Exercised</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">109,250</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.20</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 0pt 0pt 9pt;">Canceled/expired/forfeited</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: 15%; 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;">&#160;</td>
			<td style="width: 15%; 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;">&#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;">Options outstanding, March 31, 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; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">301,365</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;">&#160;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.61</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;">Options exercisable, March 31, 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; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">286,665</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;">&#160;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.59</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; 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 March 31, 2023, $33,000 of total unrecognized compensation cost related to stock options was expected to be recognized over a weighted average period of 4.48 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657218928">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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:Times New Roman;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 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657179136">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 March 31, 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%; margin-left: 36pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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 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;">12,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;">3,013,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);">8,861,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;">24,094,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657218928">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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:c413">four</span> facilities in India (<span style="-sec-ix-hidden:c414">three</span> owned and <span style="-sec-ix-hidden:c415">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:c426"><span style="-sec-ix-hidden:c427">no</span></span> impairment was required as of March 31, 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 March 31, 2023 and 2022, the Company purchased $5,036,000 and $6,183,000 of inventories, respectively, from Harmony. For the three months ended March 31, 2023 and 2022, the Company sold $0 and $258,000 of inventories, respectively, to Harmony. For the three months ended March 31, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $109,000 and $49,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 March 31, 2023, the Company&#8217;s investment in Harmony was $4,964,000, which consisted of its original $1,450,000 investment and cumulative equity in income of unconsolidated affiliate of $5,885,000, less $942,000 in repayments of an advance $77,000 in payments of dividends and $1,352,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657214448">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 March 31, 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: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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 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: 66%;">
			<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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">337,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: 14%; 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50,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: 14%; 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 0pt 0pt 9pt;">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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">387,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: 14%; 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657354288">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 months ended March 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>For the Three Months Ended</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>March 31,</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 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>2023</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>2022</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; 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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">552,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,522,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>
		</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;">Shares (denominator):</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: 59.8%;">
			<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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,150,067</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;">13,058,871</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">43,535</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);">100,619</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>
		</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,193,602</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,159,490</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>
		</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;">Earnings per common share:</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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.05</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;">0.12</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 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;">&#160;</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">&#160;</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;">&#160;</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">&#160;</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 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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.05</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;">0.12</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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654429184">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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,352,000 and $1,489,000 as of March 31, 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657162768">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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:c523">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; margin: 0pt 0pt 0pt 18pt; text-align: justify;">The following table presents consolidated net sales for each segment for the three months ended March 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>
		</tr>
		<tr 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>March 31,</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 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; 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;">8,631,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;">10,237,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);">5,169,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);">7,424,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">13,800,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;">17,661,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 months ended March 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>For the Three Months Ended</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>March 31,</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 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>2023</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>2022</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; 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;">956,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;">1,667,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);">784,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,701,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,740,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;">3,368,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 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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,047,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;">1,394,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">141,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);">452,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">552,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;">1,522,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 March 31, 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%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b>December 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>2023</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>2022</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,486,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,298,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,784,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,060,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,844,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"/>
<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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657160768">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 18pt;">The following table summarizes the Company&#8217;s net sales by geographic region for the three months ended March 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>
		</tr>
		<tr 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>March 31,</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 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; 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>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 59.3%;">
			<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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">13,694,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;">17,076,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">106,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);">585,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>
		</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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">13,800,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;">17,661,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;">Net sales by geographic region are based on the countries in which our customers are located. For the three months ended March 31, 2023 and 2022, the Company generated approximately $45,000 and $474,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 18pt;">The following table summarizes the locations of the Company&#8217;s long-lived assets by geographic region as of March 31, 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%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><b><b>December 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>2023</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>2022</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; 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;">Long-lived assets 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>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 59.4%;">
			<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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,460,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;">4,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(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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,328,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,362,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>
		</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 total long-lived 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,788,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,742,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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657244256">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 March 31, 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657192656">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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;">The Company has operating leases for the Company&#8217;s corporate office and manufacturing facilities, which expire at various dates through 2025. The Company&#8217;s primary operating lease commitments at March 31, 2023 related to the Company&#8217;s 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>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;">As of March 31, 2023, the Company had operating lease right-of-use assets of $1,488,000 and operating lease liabilities of $1,535,000. As of March 31, 2023, the Company did <span style="-sec-ix-hidden:c660">not</span> have any finance leases recorded on the Company&#8217;s condensed consolidated balance sheet. Operating lease expense was approximately $322,000, during the three months ended March 31, 2023.</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 aggregate future minimum lease payments and reconciliation to lease liabilities as of March 31, 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 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>March 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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 nine 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;">763,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;">484,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; 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);">365,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;">
			<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,612,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;">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);">(77,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(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 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,535,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;">As of March 31, 2023, the weighted average remaining lease term of the Company&#8217;s operating leases was 1.9 years. During the three months ended March 31, 2023, the weighted average discount rate with respect to these leases was 4.07%.</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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657119456">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046649440704">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 March 31, 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 in 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 March 31, 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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#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 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654429184">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 March 31, 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>



<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657218928">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 18pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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 style="font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></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>Weighted Average</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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 style="font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#160;</b></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>Exercise Price</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>Options</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>Per Option</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: 64%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, December 31, 2022</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">410,615</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.50</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 0pt 0pt 9pt;">Granted to employees and non-employee directors</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: 15%; 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;">&#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: 15%; 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;">&#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;">Exercised</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">109,250</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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.20</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 0pt 0pt 9pt;">Canceled/expired/forfeited</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: 15%; 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;">&#160;</td>
			<td style="width: 15%; 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;">&#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;">Options outstanding, March 31, 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; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">301,365</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;">&#160;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.61</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;">Options exercisable, March 31, 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; border-bottom: 3px double rgb(0, 0, 0);">&#160;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">286,665</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;">&#160;</td>
			<td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3.59</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657239536">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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%; margin-left: 36pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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 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;">12,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;">3,013,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);">8,861,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;">24,094,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657218928">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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 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: 66%;">
			<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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">337,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: 14%; 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50,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: 14%; 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 0pt 0pt 9pt;">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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">387,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: 14%; 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657281200">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>For the Three Months Ended</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>March 31,</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 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>2023</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>2022</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; 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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">552,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,522,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>
		</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;">Shares (denominator):</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: 59.8%;">
			<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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,150,067</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;">13,058,871</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">43,535</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);">100,619</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>
		</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,193,602</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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,159,490</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>
		</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;">Earnings per common share:</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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.05</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;">0.12</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 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;">&#160;</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">&#160;</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;">&#160;</td>
			<td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">&#160;</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 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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">0.05</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;">0.12</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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654397584">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>
		</tr>
		<tr 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>March 31,</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 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; 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;">8,631,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;">10,237,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);">5,169,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);">7,424,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">13,800,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;">17,661,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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>For the Three Months Ended</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>March 31,</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 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>2023</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>2022</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; 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;">956,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;">1,667,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);">784,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,701,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,740,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;">3,368,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 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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,047,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;">1,394,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">141,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);">452,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">552,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;">1,522,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%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b><b>December 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>2023</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>2022</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,486,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,298,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,784,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,060,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,844,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657281200">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>
		</tr>
		<tr 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>March 31,</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 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; 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>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 59.3%;">
			<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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">13,694,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;">17,076,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">106,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);">585,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>
		</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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">13,800,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;">17,661,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 border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr 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>March 31,</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:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><b><b>December 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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>2023</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>2022</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; 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;">Long-lived assets 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>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 59.4%;">
			<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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,460,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;">4,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(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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,328,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,362,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>
		</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 total long-lived 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,788,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,742,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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657273936">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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 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>March 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr 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 nine 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;">763,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;">484,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; 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);">365,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;">
			<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,612,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;">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);">(77,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(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 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,535,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046652457152">
<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">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 31, 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">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">$ 3,000<span></span>
</td>
<td class="nump">$ 28,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">$ 33,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">4 years 5 months 23 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_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">$ 18,000<span></span>
</td>
<td class="nump">$ 27,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">$ 44,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">7 months 17 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="nump">1,305,251<span></span>
</td>
</tr>
<tr class="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">0<span></span>
</td>
<td class="nump">0<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] | 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 (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046655311104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Stocked-based Compensation - Stock Option Activity (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2023 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options outstanding, Options (in shares) | 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) | $ / shares</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) | shares</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted, Weighted average price (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised, Options (in shares) | shares</a></td>
<td class="num">(109,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) | $ / shares</a></td>
<td class="nump">$ 3.20<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Canceled/expired/forfeited, Options (in shares) | shares</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Canceled/expired/forfeited, Weighted average price (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Options, Options (in shares) | shares</a></td>
<td class="nump">301,365<span></span>
</td>
</tr>
<tr class="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) | $ / shares</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Options exercisable, Options (in shares) | shares</a></td>
<td class="nump">286,665<span></span>
</td>
</tr>
<tr class="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) | $ / shares</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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657654976">
<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>Mar. 31, 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">$ 12,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">3,013,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">8,861,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">$ 24,094,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046647258416">
<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="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Mar. 31, 2023 </div>
<div>USD ($) </div>
<div>ft&#178;</div>
</th>
<th class="th">
<div>Mar. 31, 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,036,000<span></span>
</td>
<td class="nump">$ 6,183,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, Total</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">258,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">$ 109,000<span></span>
</td>
<td class="nump">$ 49,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_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>
</tr>
<tr class="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="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="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="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>
</tr>
<tr class="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="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>
</tr>
<tr class="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="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>
</tr>
<tr class="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="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>
</tr>
<tr class="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="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>
</tr>
<tr class="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="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">4,964,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="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">5,885,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="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="nump">$ 1,352,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>
</tr>
<tr class="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="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>
</tr>
<tr class="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="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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654336880">
<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>Mar. 31, 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">$ 337,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">50,000<span></span>
</td>
<td class="nump">695,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_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">$ 387,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046649414720">
<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="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 552,000<span></span>
</td>
<td class="nump">$ 1,522,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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract', window );"><strong>Shares (denominator):</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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding (in shares)</a></td>
<td class="nump">12,150,067<span></span>
</td>
<td class="nump">13,058,871<span></span>
</td>
</tr>
<tr class="ro">
<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">43,535<span></span>
</td>
<td class="nump">100,619<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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding (in shares)</a></td>
<td class="nump">12,193,602<span></span>
</td>
<td class="nump">13,159,490<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per common share:</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_EarningsPerShareBasic', window );">Basic earnings per common share (in dollars per share)</a></td>
<td class="nump">$ 0.05<span></span>
</td>
<td class="nump">$ 0.12<span></span>
</td>
</tr>
<tr class="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.05<span></span>
</td>
<td class="nump">$ 0.12<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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657357024">
<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>Mar. 31, 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_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated Other Comprehensive Income (Loss), Net of Tax</a></td>
<td class="num">$ (1,352,000)<span></span>
</td>
<td class="num">$ (1,489,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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657369504">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 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.1</span><table class="report" border="0" cellspacing="2" id="idm140046655310592">
<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>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 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 );">Net sales</a></td>
<td class="nump">$ 13,800,000<span></span>
</td>
<td class="nump">$ 17,661,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" 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">8,631,000<span></span>
</td>
<td class="nump">10,237,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" 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">$ 5,169,000<span></span>
</td>
<td class="nump">$ 7,424,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654121296">
<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="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 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_NetIncomeLoss', window );">Net income loss</a></td>
<td class="nump">$ 552,000<span></span>
</td>
<td class="nump">$ 1,522,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">141,000<span></span>
</td>
<td class="nump">452,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="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 loss</a></td>
<td class="nump">1,740,000<span></span>
</td>
<td class="nump">3,368,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="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 loss</a></td>
<td class="nump">956,000<span></span>
</td>
<td class="nump">1,667,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="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 loss</a></td>
<td class="nump">784,000<span></span>
</td>
<td class="nump">1,701,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="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 loss</a></td>
<td class="nump">$ 1,047,000<span></span>
</td>
<td class="nump">$ 1,394,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654139904">
<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>Mar. 31, 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 );">Consolidated assets</a></td>
<td class="nump">$ 5,844,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 );">Consolidated assets</a></td>
<td class="nump">4,784,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 );">Consolidated assets</a></td>
<td class="nump">3,486,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 );">Consolidated assets</a></td>
<td class="nump">1,298,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 );">Consolidated assets</a></td>
<td class="nump">$ 1,060,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654337008">
<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>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 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 );">Revenue from Contract with Customer, Including Assessed Tax</a></td>
<td class="nump">$ 13,800,000<span></span>
</td>
<td class="nump">$ 17,661,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>
</tr>
<tr class="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">$ 45,000<span></span>
</td>
<td class="nump">$ 474,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046654112528">
<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="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2023</div></th>
<th class="th"><div>Mar. 31, 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">$ 13,800,000<span></span>
</td>
<td class="nump">$ 17,661,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>
</tr>
<tr class="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,788,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>
</tr>
<tr class="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">13,694,000<span></span>
</td>
<td class="nump">17,076,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,460,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>
</tr>
<tr class="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">106,000<span></span>
</td>
<td class="nump">$ 585,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,328,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.1</span><table class="report" border="0" cellspacing="2" id="idm140046655378320">
<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">3 Months Ended</th>
<th class="th" colspan="2"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 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,488,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,535,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">$ 322,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">1 year 10 months 24 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.07%<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.1</span><table class="report" border="0" cellspacing="2" id="idm140046655259648">
<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>Mar. 31, 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">$ 763,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">484,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">365,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_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total future minimum lease payments</a></td>
<td class="nump">1,612,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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="nump">77,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 );">Total lease liabilities</a></td>
<td class="nump">$ 1,535,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_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.1</span><table class="report" border="0" cellspacing="2" id="idm140046657178576">
<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>Mar. 31, 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>apt20230331_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/20230331"
  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"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="apt-20230331.xsd" xlink:type="simple"/>
    <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="i_2023-03-31_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-03-31</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-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</instant>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31_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-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-31_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-03-31</endDate>
        </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_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-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-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>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-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>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-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>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</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-03-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>2023-03-31</instant>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-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>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-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>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-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>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-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>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-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>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-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>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-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>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-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>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-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>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i_2023-03-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>
            <instant>2023-03-31</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-03-31_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-03-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_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-03-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_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-03-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_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-03-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_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-03-31</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-03-31_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-03-31</endDate>
        </period>
    </context>
    <context id="i_2023-03-31_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-03-31</instant>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-31_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-03-31</endDate>
        </period>
    </context>
    <context id="i_2023-03-31_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-03-31</instant>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31_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-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31_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-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-31_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-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-31_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-03-31</endDate>
        </period>
    </context>
    <context id="d_2022-01-01_2022-03-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>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="d_2023-01-01_2023-03-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>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i_2023-03-31_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-03-31</instant>
        </period>
    </context>
    <context id="i_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>
            <instant>2020-12-31</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-03-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>
            <instant>2023-03-31</instant>
        </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_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-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_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-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_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_RelatedAndNonrelatedPartyStatusAxis-RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedAndNonrelatedPartyStatusAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_RelatedAndNonrelatedPartyStatusAxis-RelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedAndNonrelatedPartyStatusAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i_2022-12-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedAndNonrelatedPartyStatusAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i_2023-03-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedAndNonrelatedPartyStatusAxis">us-gaap:NonrelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i_2023-05-02">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000884269</identifier>
        </entity>
        <period>
            <instant>2023-05-02</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:EntityCentralIndexKey contextRef="d_2023-01-01_2023-03-31">0000884269</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="d_2023-01-01_2023-03-31">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate contextRef="d_2023-01-01_2023-03-31">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="d_2023-01-01_2023-03-31">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="d_2023-01-01_2023-03-31">Q1</dei:DocumentFiscalPeriodFocus>
    <us-gaap:FinanceLeaseLiability
      contextRef="i_2023-03-31"
      decimals="-3"
      id="c660"
      unitRef="USD">0</us-gaap:FinanceLeaseLiability>
    <us-gaap:NumberOfOperatingSegments
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c523"
      unitRef="Pure">2</us-gaap:NumberOfOperatingSegments>
    <us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment
      contextRef="d_2022-01-01_2022-12-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="-3"
      id="c427"
      unitRef="USD">0</us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment>
    <us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment
      contextRef="d_2023-01-01_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="-3"
      id="c426"
      unitRef="USD">0</us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment>
    <apt:NumberOfStoresRented
      contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c415"
      unitRef="Pure">1</apt:NumberOfStoresRented>
    <apt:NumberOfStoresOwned
      contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c414"
      unitRef="Pure">3</apt:NumberOfStoresOwned>
    <us-gaap:NumberOfStores
      contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c413"
      unitRef="Pure">4</us-gaap:NumberOfStores>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="d_2023-01-01_2023-03-31"
      decimals="-3"
      id="c348"
      unitRef="Pure">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2022-01-01_2022-03-31_PlanNameAxis-The2004PlanMember"
      decimals="-3"
      id="c321"
      unitRef="Share">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2023-01-01_2023-03-31_PlanNameAxis-The2004PlanMember"
      decimals="-3"
      id="c320"
      unitRef="Share">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c78"
      unitRef="USDPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i_2023-03-31"
      decimals="INF"
      id="c77"
      unitRef="USDPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <dei:DocumentType contextRef="d_2023-01-01_2023-03-31" id="c2">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="d_2023-01-01_2023-03-31" id="c3">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="d_2023-01-01_2023-03-31" id="c4">2023-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport contextRef="d_2023-01-01_2023-03-31" id="c5">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="d_2023-01-01_2023-03-31" id="c6">001-15725</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="d_2023-01-01_2023-03-31" id="c7">Alpha Pro Tech, Ltd.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="d_2023-01-01_2023-03-31" id="c8">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="d_2023-01-01_2023-03-31" id="c9">63-1009183</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="d_2023-01-01_2023-03-31" id="c10">60 Centurian Drive, Suite 112</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="d_2023-01-01_2023-03-31" id="c11">Markham</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="d_2023-01-01_2023-03-31" id="c12">ON</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressCountry contextRef="d_2023-01-01_2023-03-31" id="c13">CA</dei:EntityAddressCountry>
    <dei:EntityAddressPostalZipCode contextRef="d_2023-01-01_2023-03-31" id="c14">L3R 9R2</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="d_2023-01-01_2023-03-31" id="c15">905</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="d_2023-01-01_2023-03-31" id="c16">479-0654</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="d_2023-01-01_2023-03-31" id="c17">$0.01 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="d_2023-01-01_2023-03-31" id="c18">APT</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="d_2023-01-01_2023-03-31" id="c19">NYSEAMER</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="d_2023-01-01_2023-03-31" id="c20">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="d_2023-01-01_2023-03-31" id="c21">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="d_2023-01-01_2023-03-31" id="c22">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="d_2023-01-01_2023-03-31" id="c23">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="d_2023-01-01_2023-03-31" id="c24">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="d_2023-01-01_2023-03-31" id="c25">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i_2023-05-02"
      decimals="INF"
      id="c26"
      unitRef="Share">12188206</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2023-03-31"
      decimals="0"
      id="c31"
      unitRef="USD">13821000</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-03-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember"
      decimals="0"
      id="c33"
      unitRef="USD">35000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2022-12-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember"
      decimals="0"
      id="c34"
      unitRef="USD">45000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2023-03-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember"
      decimals="0"
      id="c35"
      unitRef="USD">8406000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2022-12-31_RelatedAndNonrelatedPartyStatusAxis-NonrelatedPartyMember"
      decimals="0"
      id="c36"
      unitRef="USD">5382000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2023-03-31_RelatedAndNonrelatedPartyStatusAxis-RelatedPartyMember"
      decimals="0"
      id="c37"
      unitRef="USD">726000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2022-12-31_RelatedAndNonrelatedPartyStatusAxis-RelatedPartyMember"
      decimals="0"
      id="c38"
      unitRef="USD">1591000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i_2023-03-31"
      decimals="0"
      id="c39"
      unitRef="USD">24094000</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-03-31"
      decimals="0"
      id="c41"
      unitRef="USD">4712000</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-03-31"
      decimals="0"
      id="c43"
      unitRef="USD">51759000</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-03-31"
      decimals="0"
      id="c45"
      unitRef="USD">5788000</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-03-31"
      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-03-31"
      decimals="0"
      id="c49"
      unitRef="USD">1000</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-03-31"
      decimals="0"
      id="c51"
      unitRef="USD">1488000</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-03-31"
      decimals="0"
      id="c53"
      unitRef="USD">4964000</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-03-31"
      decimals="0"
      id="c55"
      unitRef="USD">64055000</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-03-31"
      decimals="0"
      id="c59"
      unitRef="USD">383000</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-03-31"
      decimals="0"
      id="c61"
      unitRef="USD">387000</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-03-31"
      decimals="0"
      id="c63"
      unitRef="USD">903000</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-03-31"
      decimals="0"
      id="c65"
      unitRef="USD">1673000</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-03-31"
      decimals="0"
      id="c67"
      unitRef="USD">632000</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-03-31"
      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-03-31"
      decimals="0"
      id="c71"
      unitRef="USD">3069000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i_2022-12-31"
      decimals="0"
      id="c72"
      unitRef="USD">4045000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i_2023-03-31"
      id="c74"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i_2023-03-31"
      id="c75"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2023-03-31"
      decimals="INF"
      id="c79"
      unitRef="Share">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c80"
      unitRef="Share">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2023-03-31"
      decimals="INF"
      id="c81"
      unitRef="Share">12135556</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c82"
      unitRef="Share">12226306</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="i_2023-03-31"
      decimals="0"
      id="c83"
      unitRef="USD">122000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i_2022-12-31"
      decimals="0"
      id="c84"
      unitRef="USD">123000</us-gaap:CommonStockValue>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2023-03-31"
      decimals="0"
      id="c85"
      unitRef="USD">62216000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2022-12-31"
      decimals="0"
      id="c86"
      unitRef="USD">62124000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2023-03-31"
      decimals="0"
      id="c87"
      unitRef="USD">-1352000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2022-12-31"
      decimals="0"
      id="c88"
      unitRef="USD">-1489000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31"
      decimals="0"
      id="c89"
      unitRef="USD">60986000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31"
      decimals="0"
      id="c90"
      unitRef="USD">60758000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2023-03-31"
      decimals="0"
      id="c91"
      unitRef="USD">64055000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2022-12-31"
      decimals="0"
      id="c92"
      unitRef="USD">64803000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c95"
      unitRef="USD">13800000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c96"
      unitRef="USD">17661000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c97"
      unitRef="USD">8818000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c98"
      unitRef="USD">11219000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c99"
      unitRef="USD">4982000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c100"
      unitRef="USD">6442000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c102"
      unitRef="USD">4313000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c103"
      unitRef="USD">4306000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c104"
      unitRef="USD">243000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c105"
      unitRef="USD">212000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:OperatingExpenses
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c106"
      unitRef="USD">4556000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c107"
      unitRef="USD">4518000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c108"
      unitRef="USD">426000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c109"
      unitRef="USD">1924000</us-gaap:OperatingIncomeLoss>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c111"
      unitRef="USD">109000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c112"
      unitRef="USD">49000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c113"
      unitRef="USD">158000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c114"
      unitRef="USD">1000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c115"
      unitRef="USD">267000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c116"
      unitRef="USD">50000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossAttributableToParent
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c117"
      unitRef="USD">693000</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeLossAttributableToParent
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c118"
      unitRef="USD">1974000</us-gaap:IncomeLossAttributableToParent>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c119"
      unitRef="USD">141000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c120"
      unitRef="USD">452000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c121"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c122"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c123"
      unitRef="USDPerShare">0.05</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c124"
      unitRef="USDPerShare">0.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c125"
      unitRef="USDPerShare">0.05</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c126"
      unitRef="USDPerShare">0.12</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c127"
      unitRef="Share">12150067</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c128"
      unitRef="Share">13058871</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c129"
      unitRef="Share">12193602</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c130"
      unitRef="Share">13159490</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c133"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c134"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c135"
      unitRef="USD">137000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c136"
      unitRef="USD">-153000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c137"
      unitRef="USD">689000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c138"
      unitRef="USD">1369000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c141"
      unitRef="Share">12226306</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c142"
      unitRef="USD">123000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c143"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c144"
      unitRef="USD">62124000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c145"
      unitRef="USD">-1489000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-12-31"
      decimals="0"
      id="c146"
      unitRef="USD">60758000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c150"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c151"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c152"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c153"
      unitRef="Share">200000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c154"
      unitRef="USD">2000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c155"
      unitRef="USD">22000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c156"
      unitRef="USD">809000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c157"
      unitRef="USD">-0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c158"
      unitRef="USD">833000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c161"
      unitRef="USD">22000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c163"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c164"
      unitRef="USD">22000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c165"
      unitRef="Share">109250</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c166"
      unitRef="USD">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c168"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c169"
      unitRef="USD">350000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c171"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c172"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c173"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c174"
      unitRef="USD">137000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c175"
      unitRef="USD">137000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c176"
      unitRef="Share">12135556</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c177"
      unitRef="USD">122000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c178"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c179"
      unitRef="USD">62216000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c180"
      unitRef="USD">-1352000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-03-31"
      decimals="0"
      id="c181"
      unitRef="USD">60986000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c184"
      unitRef="Share">13115341</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c185"
      unitRef="USD">132000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c186"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c187"
      unitRef="USD">62488000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c188"
      unitRef="USD">-869000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-12-31"
      decimals="0"
      id="c189"
      unitRef="USD">61751000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c193"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c194"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c195"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c196"
      unitRef="Share">170000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c197"
      unitRef="USD">2000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c198"
      unitRef="USD">55000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c199"
      unitRef="USD">699000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c200"
      unitRef="USD">-0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c201"
      unitRef="USD">756000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c204"
      unitRef="USD">55000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c206"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c207"
      unitRef="USD">55000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c209"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c210"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c211"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c212"
      unitRef="USD">-153000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c213"
      unitRef="USD">-153000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c214"
      unitRef="Share">12945341</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c215"
      unitRef="USD">130000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-AdditionalPaidInCapitalMember"
      decimals="0"
      id="c216"
      unitRef="USD">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c217"
      unitRef="USD">63311000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31_StatementEquityComponentsAxis-AccumulatedOtherComprehensiveIncomeMember"
      decimals="0"
      id="c218"
      unitRef="USD">-1022000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-03-31"
      decimals="0"
      id="c219"
      unitRef="USD">62419000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c223"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c224"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c226"
      unitRef="USD">22000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c227"
      unitRef="USD">55000</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c228"
      unitRef="USD">243000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c229"
      unitRef="USD">212000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c230"
      unitRef="USD">109000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c231"
      unitRef="USD">49000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <apt:OperatingLeaseExpenseNetOfAccretion
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c232"
      unitRef="USD">237000</apt:OperatingLeaseExpenseNetOfAccretion>
    <apt:OperatingLeaseExpenseNetOfAccretion
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c233"
      unitRef="USD">228000</apt:OperatingLeaseExpenseNetOfAccretion>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c235"
      unitRef="USD">3024000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c236"
      unitRef="USD">3814000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInDueFromRelatedParties
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c237"
      unitRef="USD">-865000</us-gaap:IncreaseDecreaseInDueFromRelatedParties>
    <us-gaap:IncreaseDecreaseInDueFromRelatedParties
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c238"
      unitRef="USD">214000</us-gaap:IncreaseDecreaseInDueFromRelatedParties>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c239"
      unitRef="USD">-303000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c240"
      unitRef="USD">-1086000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c241"
      unitRef="USD">-190000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c242"
      unitRef="USD">-736000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c243"
      unitRef="USD">-737000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c244"
      unitRef="USD">-714000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c245"
      unitRef="USD">-239000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c246"
      unitRef="USD">-227000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c247"
      unitRef="USD">-1697000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c248"
      unitRef="USD">-1179000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c250"
      unitRef="USD">289000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c251"
      unitRef="USD">133000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c252"
      unitRef="USD">-289000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c253"
      unitRef="USD">-133000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <apt:ProceedsFromPaymentsForStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c255"
      unitRef="USD">350000</apt:ProceedsFromPaymentsForStockOptionsExercised>
    <apt:ProceedsFromPaymentsForStockOptionsExercised
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c256"
      unitRef="USD">0</apt:ProceedsFromPaymentsForStockOptionsExercised>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c257"
      unitRef="USD">833000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c258"
      unitRef="USD">756000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c259"
      unitRef="USD">-483000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c260"
      unitRef="USD">-756000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c261"
      unitRef="USD">-2469000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c262"
      unitRef="USD">-2068000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2022-12-31"
      decimals="0"
      id="c263"
      unitRef="USD">16290000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2021-12-31"
      decimals="0"
      id="c264"
      unitRef="USD">16307000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2023-03-31"
      decimals="0"
      id="c265"
      unitRef="USD">13821000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2022-03-31"
      decimals="0"
      id="c266"
      unitRef="USD">14239000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:NatureOfOperations contextRef="d_2023-01-01_2023-03-31" id="c267">
&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: &amp;quot;Times New Roman&amp;quot;, 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-03-31" id="c269">
&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 months ended March 31, 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 includes 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 March 31, 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-03-31" id="c292">
&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 21pt;"&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 provides 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. Due to the cancelation and expiration of options, the 2004 Plan had 1,305,251 options available to grant at the time the 2004 Plan was replaced in 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 three months ended March 31, 2023 and 2022, &lt;span style="-sec-ix-hidden:c320"&gt;&lt;span style="-sec-ix-hidden:c321"&gt;no&lt;/span&gt;&lt;/span&gt; stock options were granted under the 2004 Option Plan or the 2020 Incentive Plan. The Company recognized $3,000 and $28,000 in stock-based compensation expense for the three months ended March 31, 2023 and 2022, respectively, related to outstanding options previously granted under the 2004 Option Plan. For the three months ended March 31, 2023 and 2022, no restricted stock awards were granted under the 2020 Incentive Plan. The Company recognized $18,000 and $27,000 in compensation expense associated with outstanding restricted stock awards for the three months ended March 31, 2023 and 2022, respectively. As of March 31, 2023, $44,000 of total unrecognized compensation cost related to outstanding restricted stock awards was expected to be recognized over a weighted-average remainder period of 0.63 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;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 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:c348"&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 three months ended March 31, 2023:&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;&#160;&lt;/p&gt;


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

		&lt;tbody&gt;&lt;tr 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 style="font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&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;Weighted Average&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 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 style="font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&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;Exercise Price&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 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;Options&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;Per Option&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: 64%;"&gt;
			&lt;p style="font-family: Times New Roman; 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: 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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;410,615&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3.50&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 0pt 0pt 9pt;"&gt;Granted to employees and non-employee directors&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;-&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;-&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;Exercised&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;109,250&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3.20&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 0pt 0pt 9pt;"&gt;Canceled/expired/forfeited&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: 15%; 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;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;-&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;Options outstanding, March 31, 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; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;301,365&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;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3.61&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;Options exercisable, March 31, 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; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;286,665&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;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3.59&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;/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 March 31, 2023, $33,000 of total unrecognized compensation cost related to stock options was expected to be recognized over a weighted average period of 4.48 years.&lt;/p&gt;
</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i_2023-03-31_PlanNameAxis-The2004PlanMember"
      decimals="INF"
      id="c295"
      unitRef="Share">5000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2020-01-01_2020-12-31_PlanNameAxis-The2004PlanMember"
      decimals="INF"
      id="c297"
      unitRef="Share">5009750</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i_2020-12-31_PlanNameAxis-The2004PlanMember"
      decimals="INF"
      id="c301"
      unitRef="Share">1305251</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="i_2023-03-31_RestructuringPlanAxis-IncentivePlan2020Member"
      decimals="INF"
      id="c307"
      unitRef="Share">1800000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2023-01-01_2023-03-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="0"
      id="c324"
      unitRef="USD">3000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2022-01-01_2022-03-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="0"
      id="c325"
      unitRef="USD">28000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2023-01-01_2023-03-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="-3"
      id="c335"
      unitRef="Share">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="d_2022-01-01_2022-03-31_AwardTypeAxis-RestrictedStockMember_PlanNameAxis-IncentivePlan2020Member"
      decimals="-3"
      id="c336"
      unitRef="Share">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2023-01-01_2023-03-31_AwardTypeAxis-RestrictedStockMember"
      decimals="0"
      id="c338"
      unitRef="USD">18000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2022-01-01_2022-03-31_AwardTypeAxis-RestrictedStockMember"
      decimals="0"
      id="c339"
      unitRef="USD">27000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2023-03-31_AwardTypeAxis-RestrictedStockMember"
      decimals="0"
      id="c346"
      unitRef="USD">44000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="d_2023-01-01_2023-03-31_AwardTypeAxis-RestrictedStockMember"
      id="c347">P0Y7M17D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="d_2023-01-01_2023-03-31" id="c367">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 18pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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 style="font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&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;Weighted Average&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 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 style="font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&lt;b&gt;&#160;&lt;/b&gt;&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;Exercise Price&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 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;Options&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;Per Option&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: 64%;"&gt;
			&lt;p style="font-family: Times New Roman; 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: 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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;410,615&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3.50&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 0pt 0pt 9pt;"&gt;Granted to employees and non-employee directors&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;-&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;-&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;Exercised&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;109,250&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: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3.20&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 0pt 0pt 9pt;"&gt;Canceled/expired/forfeited&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: 15%; 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;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;-&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;Options outstanding, March 31, 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; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;301,365&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;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3.61&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;Options exercisable, March 31, 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; border-bottom: 3px double rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;286,665&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;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 15%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3.59&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;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c369"
      unitRef="Share">410615</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2022-12-31"
      decimals="INF"
      id="c370"
      unitRef="USDPerShare">3.50</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c371"
      unitRef="Share">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c372"
      unitRef="USDPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c373"
      unitRef="Share">109250</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c374"
      unitRef="USDPerShare">3.20</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c375"
      unitRef="Share">-0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c376"
      unitRef="USDPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i_2023-03-31"
      decimals="INF"
      id="c377"
      unitRef="Share">301365</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i_2023-03-31"
      decimals="INF"
      id="c378"
      unitRef="USDPerShare">3.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i_2023-03-31"
      decimals="INF"
      id="c379"
      unitRef="Share">286665</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i_2023-03-31"
      decimals="INF"
      id="c380"
      unitRef="USDPerShare">3.59</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2023-03-31_AwardTypeAxis-EmployeeStockOptionMember"
      decimals="0"
      id="c365"
      unitRef="USD">33000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="d_2023-01-01_2023-03-31_AwardTypeAxis-EmployeeStockOptionMember"
      id="c366">P4Y5M23D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="d_2023-01-01_2023-03-31" id="c381">
&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:Times New Roman;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 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-03-31" id="c383">
&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 March 31, 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%; margin-left: 36pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;March 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;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 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;12,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;3,013,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;8,861,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;24,094,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-03-31" id="c397">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 36pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;March 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;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 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;12,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;3,013,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;8,861,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;24,094,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-03-31"
      decimals="0"
      id="c399"
      unitRef="USD">12220000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i_2022-12-31"
      decimals="0"
      id="c400"
      unitRef="USD">13018000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2023-03-31"
      decimals="0"
      id="c401"
      unitRef="USD">3013000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2022-12-31"
      decimals="0"
      id="c402"
      unitRef="USD">2225000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2023-03-31"
      decimals="0"
      id="c403"
      unitRef="USD">8861000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2022-12-31"
      decimals="0"
      id="c404"
      unitRef="USD">9154000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="i_2023-03-31"
      decimals="0"
      id="c405"
      unitRef="USD">24094000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2022-12-31"
      decimals="0"
      id="c406"
      unitRef="USD">24397000</us-gaap:InventoryNet>
    <us-gaap:EquityMethodInvestmentsDisclosureTextBlock contextRef="d_2023-01-01_2023-03-31" id="c407">
&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:c413"&gt;four&lt;/span&gt; facilities in India (&lt;span style="-sec-ix-hidden:c414"&gt;three&lt;/span&gt; owned and &lt;span style="-sec-ix-hidden:c415"&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:c426"&gt;&lt;span style="-sec-ix-hidden:c427"&gt;no&lt;/span&gt;&lt;/span&gt; impairment was required as of March 31, 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 March 31, 2023 and 2022, the Company purchased $5,036,000 and $6,183,000 of inventories, respectively, from Harmony. For the three months ended March 31, 2023 and 2022, the Company sold $0 and $258,000 of inventories, respectively, to Harmony. For the three months ended March 31, 2023 and 2022, the Company recorded equity in income of unconsolidated affiliate of $109,000 and $49,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 March 31, 2023, the Company&#x2019;s investment in Harmony was $4,964,000, which consisted of its original $1,450,000 investment and cumulative equity in income of unconsolidated affiliate of $5,885,000, less $942,000 in repayments of an advance $77,000 in payments of dividends and $1,352,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="c411"
      unitRef="Pure">0.4166</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="i_2005-12-31_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis-MapleIndustriesAndAssociatesMember_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="4"
      id="c412"
      unitRef="Pure">0.5834</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingBuildingProductsMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c417"
      unitRef="SquareFoot">139000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c419"
      unitRef="SquareFoot">121000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-SewingProprietaryDisposableProtectiveApparelMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c421"
      unitRef="SquareFoot">23000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-03-31_LegalEntityAxis-HarmonyMember_ProductOrServiceAxis-ManufacturingOfBuildingProductsMember_StatementGeographicalAxis-IN"
      decimals="INF"
      id="c423"
      unitRef="SquareFoot">159000</us-gaap:AreaOfRealEstateProperty>
    <apt:ExpenseToAcquireInventory
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c436"
      unitRef="USD">5036000</apt:ExpenseToAcquireInventory>
    <apt:ExpenseToAcquireInventory
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c437"
      unitRef="USD">6183000</apt:ExpenseToAcquireInventory>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="d_2023-01-01_2023-03-31"
      decimals="-3"
      id="c442"
      unitRef="USD">0</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c443"
      unitRef="USD">258000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c448"
      unitRef="USD">109000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c449"
      unitRef="USD">49000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:EquityMethodInvestments
      contextRef="i_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c452"
      unitRef="USD">4964000</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestmentAggregateCost
      contextRef="i_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c453"
      unitRef="USD">1450000</us-gaap:EquityMethodInvestmentAggregateCost>
    <apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate
      contextRef="i_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c454"
      unitRef="USD">5885000</apt:CumulativeEquityInIncomeOfUnconsolidatedAffiliate>
    <us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital
      contextRef="d_2023-01-01_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c455"
      unitRef="USD">942000</us-gaap:ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital>
    <us-gaap:EquityMethodInvestmentDividendsOrDistributions
      contextRef="d_2023-01-01_2023-03-31_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis-HarmonyMember"
      decimals="0"
      id="c457"
      unitRef="USD">1352000</us-gaap:EquityMethodInvestmentDividendsOrDistributions>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock contextRef="d_2023-01-01_2023-03-31" id="c458">
&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 March 31, 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: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;March 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;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 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: 66%;"&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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;337,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: 14%; 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;50,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: 14%; 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 0pt 0pt 9pt;"&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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;387,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: 14%; 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-03-31" id="c470">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 18pt; width: 90%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;March 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;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 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: 66%;"&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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;337,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: 14%; 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: 14%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;50,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: 14%; 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 0pt 0pt 9pt;"&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: 14%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;387,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: 14%; 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-03-31"
      decimals="0"
      id="c472"
      unitRef="USD">337000</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedSalariesCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c473"
      unitRef="USD">138000</us-gaap:AccruedSalariesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i_2023-03-31"
      decimals="0"
      id="c474"
      unitRef="USD">50000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c475"
      unitRef="USD">695000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2023-03-31"
      decimals="0"
      id="c476"
      unitRef="USD">387000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i_2022-12-31"
      decimals="0"
      id="c477"
      unitRef="USD">833000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:EarningsPerShareTextBlock contextRef="d_2023-01-01_2023-03-31" id="c478">
&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 months ended March 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;For the Three Months Ended&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 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;March 31,&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 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;2023&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;2022&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; 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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;552,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;1,522,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;/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;Shares (denominator):&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: 59.8%;"&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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,150,067&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;13,058,871&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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;43,535&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;100,619&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;/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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;12,193,602&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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,159,490&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;/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;Earnings per common share:&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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.05&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;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;/tr&gt;
		&lt;tr style="background-color: rgb(204, 238, 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;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;&#160;&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;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;&#160;&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 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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.05&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;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;/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-03-31" id="c497">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;For the Three Months Ended&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 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;March 31,&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 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;2023&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;2022&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; 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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;552,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;1,522,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;/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;Shares (denominator):&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: 59.8%;"&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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,150,067&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;13,058,871&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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;43,535&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;100,619&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;/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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;12,193,602&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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;13,159,490&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;/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;Earnings per common share:&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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.05&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;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;/tr&gt;
		&lt;tr style="background-color: rgb(204, 238, 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;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;&#160;&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;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;&#160;&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 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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;0.05&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;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;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c499"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c500"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c502"
      unitRef="Share">12150067</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c503"
      unitRef="Share">13058871</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c504"
      unitRef="Share">43535</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c505"
      unitRef="Share">100619</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c506"
      unitRef="Share">12193602</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c507"
      unitRef="Share">13159490</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c509"
      unitRef="USDPerShare">0.05</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c510"
      unitRef="USDPerShare">0.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2023-01-01_2023-03-31"
      decimals="INF"
      id="c511"
      unitRef="USDPerShare">0.05</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="d_2022-01-01_2022-03-31"
      decimals="INF"
      id="c512"
      unitRef="USDPerShare">0.12</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ComprehensiveIncomeNoteTextBlock contextRef="d_2023-01-01_2023-03-31" id="c513">
&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,352,000 and $1,489,000 as of March 31, 2023 and December 31, 2022, respectively.&lt;/p&gt;
</us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2023-03-31"
      decimals="0"
      id="c515"
      unitRef="USD">-1352000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i_2022-12-31"
      decimals="0"
      id="c516"
      unitRef="USD">-1489000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="d_2023-01-01_2023-03-31" id="c521">
&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:c523"&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; margin: 0pt 0pt 0pt 18pt; text-align: justify;"&gt;The following table presents consolidated net sales for each segment for the three months ended March 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;/tr&gt;
		&lt;tr 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;March 31,&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 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; 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;8,631,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;10,237,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;5,169,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;7,424,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;13,800,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;17,661,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 months ended March 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;For the Three Months Ended&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 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;March 31,&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 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;2023&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;2022&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; 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;956,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;1,667,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;784,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,701,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,740,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;3,368,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 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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,047,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;1,394,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;141,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;452,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;552,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;1,522,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 March 31, 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%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;March 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;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: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;December 31,&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 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;2023&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;2022&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,486,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,298,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,784,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,060,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,844,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;
&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock contextRef="d_2023-01-01_2023-03-31" id="c564">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;/tr&gt;
		&lt;tr 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;March 31,&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 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; 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;8,631,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;10,237,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;5,169,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;7,424,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;13,800,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;17,661,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-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c566"
      unitRef="USD">8631000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c567"
      unitRef="USD">10237000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c568"
      unitRef="USD">5169000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c569"
      unitRef="USD">7424000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c570"
      unitRef="USD">13800000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c571"
      unitRef="USD">17661000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock contextRef="d_2023-01-01_2023-03-31" id="c572">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;For the Three Months Ended&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 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;March 31,&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 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;2023&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;2022&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; 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;956,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;1,667,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;784,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,701,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,740,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;3,368,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 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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,047,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;1,394,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;141,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;452,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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;552,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;1,522,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-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c574"
      unitRef="USD">956000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c575"
      unitRef="USD">1667000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c576"
      unitRef="USD">784000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c577"
      unitRef="USD">1701000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c578"
      unitRef="USD">1740000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c579"
      unitRef="USD">3368000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c580"
      unitRef="USD">1047000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c581"
      unitRef="USD">1394000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c582"
      unitRef="USD">141000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c583"
      unitRef="USD">452000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c584"
      unitRef="USD">552000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c585"
      unitRef="USD">1522000</us-gaap:NetIncomeLoss>
    <us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock contextRef="d_2023-01-01_2023-03-31" id="c586">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;March 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;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: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;December 31,&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 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;2023&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;2022&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,486,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,298,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,784,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,060,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,844,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-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c588"
      unitRef="USD">3486000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember"
      decimals="0"
      id="c589"
      unitRef="USD">3395000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c590"
      unitRef="USD">1298000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-DisposableProtectiveApparelMember"
      decimals="0"
      id="c591"
      unitRef="USD">1327000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c592"
      unitRef="USD">4784000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-OperatingSegmentsMember"
      decimals="0"
      id="c593"
      unitRef="USD">4722000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-03-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c594"
      unitRef="USD">1060000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-CorporateNonSegmentMember"
      decimals="0"
      id="c595"
      unitRef="USD">1076000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2023-03-31"
      decimals="0"
      id="c596"
      unitRef="USD">5844000</apt:TotalConsolidatedAssets>
    <apt:TotalConsolidatedAssets
      contextRef="i_2022-12-31"
      decimals="0"
      id="c597"
      unitRef="USD">5798000</apt:TotalConsolidatedAssets>
    <apt:FinancialInformationAboutGeographicAreasTextBlock contextRef="d_2023-01-01_2023-03-31" id="c598">
&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 18pt;"&gt;The following table summarizes the Company&#x2019;s net sales by geographic region for the three months ended March 31, 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: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;/tr&gt;
		&lt;tr 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;March 31,&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 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; 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;/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: 59.3%;"&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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;13,694,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;17,076,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;106,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;585,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;/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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;13,800,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;17,661,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;Net sales by geographic region are based on the countries in which our customers are located. For the three months ended March 31, 2023 and 2022, the Company generated approximately $45,000 and $474,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 18pt;"&gt;The following table summarizes the locations of the Company&#x2019;s long-lived assets by geographic region as of March 31, 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%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;March 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;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:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;December 31,&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 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;2023&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;2022&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; 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;Long-lived assets 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;/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: 59.4%;"&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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,460,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;4,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(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: 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,328,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,362,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;/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 total long-lived 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,788,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,742,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;
</apt:FinancialInformationAboutGeographicAreasTextBlock>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
      contextRef="d_2023-01-01_2023-03-31"
      id="E0919BEB-CDF5-4DEE-8B88-136167B70A0E">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;/tr&gt;
		&lt;tr 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;March 31,&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 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; 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;/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: 59.3%;"&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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;13,694,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;17,076,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: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;106,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;585,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;/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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;13,800,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;17,661,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 border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 18pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr 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;March 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;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:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;December 31,&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 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;2023&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;2022&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; 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;Long-lived assets 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;/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: 59.4%;"&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: 16%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,460,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;4,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(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: 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,328,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,362,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;/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 total long-lived 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,788,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,742,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:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c629"
      unitRef="USD">13694000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c630"
      unitRef="USD">17076000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c631"
      unitRef="USD">106000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c632"
      unitRef="USD">585000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c633"
      unitRef="USD">13800000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-03-31"
      decimals="0"
      id="c634"
      unitRef="USD">17661000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2023-01-01_2023-03-31_StatementGeographicalAxis-CA"
      decimals="0"
      id="c614"
      unitRef="USD">45000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-01-01_2022-03-31_StatementGeographicalAxis-CA"
      decimals="0"
      id="c615"
      unitRef="USD">474000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:NoncurrentAssets
      contextRef="i_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c638"
      unitRef="USD">4460000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-US"
      decimals="0"
      id="c639"
      unitRef="USD">4380000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c640"
      unitRef="USD">1328000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember_StatementGeographicalAxis-InternationalMember"
      decimals="0"
      id="c641"
      unitRef="USD">1362000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"
      decimals="0"
      id="c642"
      unitRef="USD">5788000</us-gaap:NoncurrentAssets>
    <us-gaap:NoncurrentAssets
      contextRef="i_2022-12-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember"
      decimals="0"
      id="c643"
      unitRef="USD">5742000</us-gaap:NoncurrentAssets>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock contextRef="d_2023-01-01_2023-03-31" id="c644">
&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 March 31, 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-03-31" id="c649">
&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;"&gt;The Company has operating leases for the Company&#x2019;s corporate office and manufacturing facilities, which expire at various dates through 2025. The Company&#x2019;s primary operating lease commitments at March 31, 2023 related to the Company&#x2019;s 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;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 18pt;"&gt;As of March 31, 2023, the Company had operating lease right-of-use assets of $1,488,000 and operating lease liabilities of $1,535,000. As of March 31, 2023, the Company did &lt;span style="-sec-ix-hidden:c660"&gt;not&lt;/span&gt; have any finance leases recorded on the Company&#x2019;s condensed consolidated balance sheet. Operating lease expense was approximately $322,000, during the three months ended March 31, 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;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 aggregate future minimum lease payments and reconciliation to lease liabilities as of March 31, 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 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;March 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 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 nine 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;763,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;484,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; 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;365,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;
			&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,612,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;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;(77,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(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 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,535,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;As of March 31, 2023, the weighted average remaining lease term of the Company&#x2019;s operating leases was 1.9 years. During the three months ended March 31, 2023, the weighted average discount rate with respect to these leases was 4.07%.&lt;/p&gt;
</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2023-03-31"
      decimals="0"
      id="c656"
      unitRef="USD">1488000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2023-03-31"
      decimals="0"
      id="c657"
      unitRef="USD">1535000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseExpense
      contextRef="d_2023-01-01_2023-03-31"
      decimals="0"
      id="c661"
      unitRef="USD">322000</us-gaap:OperatingLeaseExpense>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="d_2023-01-01_2023-03-31" id="c680">
&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 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;March 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 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 nine 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;763,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;484,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; 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;365,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;
			&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,612,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;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;(77,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(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 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,535,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-03-31"
      decimals="0"
      id="c682"
      unitRef="USD">763000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i_2023-03-31"
      decimals="0"
      id="c683"
      unitRef="USD">484000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i_2023-03-31"
      decimals="0"
      id="c684"
      unitRef="USD">365000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i_2023-03-31"
      decimals="0"
      id="c685"
      unitRef="USD">1612000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i_2023-03-31"
      decimals="0"
      id="c686"
      unitRef="USD">77000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2023-03-31"
      decimals="0"
      id="c687"
      unitRef="USD">1535000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="i_2023-03-31" id="c675">P1Y10M24D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i_2023-03-31"
      decimals="4"
      id="c679"
      unitRef="Pure">0.0407</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="d_2023-01-01_2023-03-31" id="c688">
&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-03-31" id="c690">
&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 March 31, 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 in 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 March 31, 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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"&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 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="c694"
      unitRef="USD">490000</us-gaap:LossContingencyDamagesSoughtValue>
    <apt:DepositPaidForEquipmentWriteoff
      contextRef="i_2023-03-31_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember"
      decimals="0"
      id="c697"
      unitRef="USD">490000</apt:DepositPaidForEquipmentWriteoff>
    <us-gaap:SubsequentEventsTextBlock contextRef="d_2023-01-01_2023-03-31" id="c702">
&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 March 31, 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;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"&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', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"&gt;&#160;&lt;/p&gt;
</us-gaap:SubsequentEventsTextBlock>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc xlink:href="#c64" xlink:label="c64" xlink:type="locator"/>
        <link:loc xlink:href="#c66" xlink:label="c66" xlink:type="locator"/>
        <link:loc xlink:href="#c32" xlink:label="c32" xlink:type="locator"/>
        <link:loc xlink:href="#c60" xlink:label="c60" xlink:type="locator"/>
        <link:loc xlink:href="#c52" xlink:label="c52" xlink:type="locator"/>
        <link:loc xlink:href="#c84" xlink:label="c84" xlink:type="locator"/>
        <link:loc xlink:href="#c46" xlink:label="c46" xlink:type="locator"/>
        <link:loc xlink:href="#c90" xlink:label="c90" xlink:type="locator"/>
        <link:loc xlink:href="#c36" xlink:label="c36" xlink:type="locator"/>
        <link:loc xlink:href="#c54" xlink:label="c54" xlink:type="locator"/>
        <link:loc xlink:href="#c92" xlink:label="c92" xlink:type="locator"/>
        <link:loc xlink:href="#c86" xlink:label="c86" xlink:type="locator"/>
        <link:loc xlink:href="#c40" xlink:label="c40" xlink:type="locator"/>
        <link:loc xlink:href="#c42" xlink:label="c42" xlink:type="locator"/>
        <link:loc xlink:href="#c44" xlink:label="c44" xlink:type="locator"/>
        <link:loc xlink:href="#c38" xlink:label="c38" xlink:type="locator"/>
        <link:loc xlink:href="#c48" xlink:label="c48" xlink:type="locator"/>
        <link:loc xlink:href="#c50" xlink:label="c50" xlink:type="locator"/>
        <link:loc xlink:href="#c56" xlink:label="c56" xlink:type="locator"/>
        <link:loc xlink:href="#c62" xlink:label="c62" xlink:type="locator"/>
        <link:footnote id="f1bb42062-60dc-4919-8185-d0d60e5c5b0f" xlink:label="f1bb42062-60dc-4919-8185-d0d60e5c5b0f" 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="c64"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c66"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c32"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c60"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c52"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c84"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c46"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c90"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c36"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c54"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c92"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c86"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c40"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c42"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c44"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c38"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c48"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c50"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c56"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="c62"
          xlink:to="f1bb42062-60dc-4919-8185-d0d60e5c5b0f"
          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    (  AXJE8'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    "  (>*I6)CX;JN\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9)1
M2\,P$,>_BN2]O:1EHJ'+BV-/"H(#Q;>0W+9@TX;DI-VW-ZU;A^@'$/*2NW]^
M]SM(8X(T?<3GV >,Y##=C+[MDC1AS8Y$00(D<T2O4YD376[N^^@UY6L\0-#F
M0Q\0*LYOP2-IJTG#!"S"0F2JL4::B)KZ>,9;L^##9VQGF#6 +7KL*($H!3 U
M30RGL6W@"IA@A-&G[P+:A3A7_\3.'6#GY)C<DAJ&H1SJ.9=W$/#V]/@RKUNX
M+I'N#.97R4DZ!5RSR^37^F&SVS)5\:HN^*H0?"?NY.H^G_?)]8??5=CWUNW=
M/S:^"*H&?OT+]0502P,$%     @ "'BJ5IE<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
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
MQ%8V5[O-BQ95?3OZ(+061?VX8C1CT@C _Q="Z-<7LT![P3[['U!+ P04
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
M5U8O-M6]',L.=(@:P?&.7.1T5Z;,Q*921<5!MB1-%H:&EI);ZG8/Q&TX-%W
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
M9EMA']7^*[;Y3!Q?KH3Q7]@WL>DX@'QKK*I:,"FHN&S^[+6]AQY@&KT#2%I
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
MS 5'CR8!O%\8W$OJ!S+0_J/B[%]02P,$%     @ "'BJ5D%OR=NS @  ) 8
M !D   !X;"]W;W)K<VAE971S+W-H965T,30N>&UL?57?;YLP$'[/7V&Q:4]=
M()!?RQ*DI%VU2>L4M=WV,.W!P!&L&IO9IDG_^YT-84RB>8'S^;[OOK.Y8WV4
MZDD7 (:<2B[TQBN,J5:^K],"2JK'L@*!.[E4)36X5 =?5PIHYD E]\,@F/LE
M9<*+U\ZW5_%:UH8S 7M%=%V65+WL@,OCQIMX9\<].Q3&.OQX7=$#/(#Y7NT5
MKOR.)6,E",VD( KRC;>=K'93&^\"?C XZIY-;"6)E$]V\27;>($5!!Q28QDH
MOI[A&CBW1"CC3\OI=2DML&^?V6]=[5A+0C5<2_Z39:;8>$N/9)#3FIM[>?P,
M;3TSRY=*KMV3')O8^<PC::V-+%LP*BB9:-[TU)Y##[ ,7@&$+2!TNIM$3N4-
M-31>*WDDRD8CFS5<J0Z-XIBPE_)@%.XRQ)GXFS1 %N0]V::IJB$C7QE-&&>&
M@5[[!C/8.#]MV78-6_@*6T3NI#"%)I]$!MG_>!^5=?+"L[Q=>)'PCJHQB297
M) S"Z )?U)4;.;[H0KF:&$ENF: B9923!T,-X&=F!NMMZ*;#=+9C5KJB*6P\
M; D-ZAF\^-V;R3SX>$'LM!,[O<0>XY7(&G61/7VA"0="139T3^2&Z91+72L@
MOQ[A9,B.R_3I]U ]%S,.U[,8CX:2;C61.<$+2HONAIS"&TBA3$"=O>$5]EZ#
MYSU\*K&SM4$OTI@"2"XYC@@F#JM1QSKJDXUL"OL(1W@B"L,)G' Z:62SB0T]
MH56UA_661-'B*@@"M";1TEJC:UF63-N!TB 2*6K=PUC? 00H_"Z&-,\"1SC_
M,'-TC]*\$HC)E^?DRRARUM 7X?<ZMP1U<//)G@W>>]/$G;<;@=NF\_^%-_,3
MS^S L"X..4*#\0(GCFIF4K,PLG)S()$&IXHS"QSCH&P [N<2FZ-=V 3=CR'^
M"U!+ P04    "  (>*I6Y F08)4#   D"   &0   'AL+W=O<FMS:&5E=',O
M<VAE970Q-2YX;6R55E%OXS8,?L^O('R'0P_P:MF.VS1- C2]%MO#'8I+MST,
M>U!L)A9J2YXD-]U^_2C9<5-<&N!>8DHB/WZD2"JSG=)/ID2T\%)7TLR#TMIF
M&D4F+['FYEPU*.EDHW3-+2WU-C*-1EYXH[J*$L8NHIH+&2QF?N]!+V:JM960
M^*#!M'7-];]+K-1N'L3!?N.[V);6;42+6<.WN$+[>_.@:14-*(6H41JA)&C<
MS(.;>+H<.WVO\(? G3F0P46R5NK)+7XKY@%SA+#"W#H$3I]GO,6J<D!$XY\>
M,QA<.L-#>8]^[V.G6-;<X*VJ_A2%+>?!)( "-[RM['>U^Q7[>#*'EZO*^%_8
M=;I9&D#>&JOJWI@8U$)V7_[2Y^' 8,+>,4AZ@\3S[AQYEE^XY8N95CO03IO0
MG.!#]=9$3DAW*2NKZ520G5U\4Q9A K_ DAN1 Y<%?!%5:[& .ZZED%L##ZCA
M5M4U)7%5<HVSR))G9Q_EO9=EYR5YQTL*7Y6TI8$[66#QUCXBQ@/M9$][F9P$
M_,KU.:1Q" E+TA-XZ9"&U..E)])@P"JX%Y++7/ *5I9;I/*SYEB\'=SX.)SK
MI*EI>([S@%K%H'[&8/'I0WS!KD^0'0]DQZ?0%V\NQM\(_/6(+Q:6E<J?_CY&
M]R3@<;J3\]%/U 0\E@@;55&3TSE8OJX0&JV>14&)Y=2_N:*\5H+[9E0;6"M;
M@J2Q(V2N:O1N+('(MEX3.&D8!VR@->182'](FDUK!XQ/'R9)PJ[7CJ>7XVO
M/<6&4/*.HD>"LU[][F'5*W\.85>*O(36$K7_7 F0DYUO97+*GU'39#J@=(AG
M@(:<L<3;1;P3MJ0U!;KENG"E5+B<T<CIM4,?84^AZ/*YYTR,]DPH&U7K<U95
M-"IIYP<<&L6>IRTU(M1=9Z'K+*"^((M]8WB/)"33T7UO\^AM#KMQ--B,G(W[
M24;?7N_EC**G-%BE/\-'R+(D9(R1%(=9XN71JLO&68%2T8CRJM.^>'[(Y?L9
MC),PSEC(+BXA3D.63<+)93RZ*8KI:PIPLZ%Q?G@3EDH>5.,JPL X#;,T@YBQ
M\"*^&NVK]B=)7*7A!4L<B3B["L=7;'3W7DWMP_P([)QE_A,G@]\WNW"L\Z.#
MR4U9WOKWR9"+5MINB ^[PQ-XTTW^5_7N_:1KW K*084;,F7GEUD NGN3NH55
MC7\'J/'H5?%B2<\X:J= YQM%0[!?. ?#'X/%_U!+ P04    "  (>*I65@4'
MH4 #  !+!P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6R-5=]/VS 0
M?M]?<0K3!E+7I&EA!=I*M P-"0;BQ_8P[<%-+HV'8P?;H?2_W]D)&=V@XB6Q
MG?N^^^[.=QDME;XS.:*%QT)(,PYR:\N#,#1)C@4S756BI"^9T@6SM-6+T)0:
M6>I!A0CC*-H+"\9E,!GYLTL]&:G*"B[Q4H.IBH+IU12%6HZ#7O!T<,47N74'
MX614L@5>H[TM+S7MPI8EY05*PY4$C=DX..H=3 ?.WAM\Y[@TS];@(IDK=><V
MI^DXB)P@%)A8Q\#H]8 S%,(1D8S[AC-H73K@\_43^XF/G6*9,X,S)7[PU.;C
M8!A BAFKA+U2RZ_8Q+/K^!(EC'_"LK8=[ 605,:JH@&3@H++^LT>FSP\ PRC
M5P!Q XB][MJ15WG,+)N,M%J"=M;$YA8^5(\F<5RZHEQ;35\YX>SDF[((^_ )
MCI*D*BK!+*9P87/4,%,%U3EW!7A .%/&C$)++ATP3!KZ:4T?OT+?AW,E;6[@
MBTPQ7<>')+75&S_IG<8;"<^9[D*_UX$XBOL;^/IM_'W/U]\0OP&KX(1+)A/.
M!%Q;2@+=._MBO#7=X&4ZUT('IF0)C@/*G4']@,'DPU9O+SK<(';0BAUL8I^L
M5^14)JI V':5V0%?R)\W^&AA*E1R]^LE\9OI][OOWG(+UJZ*\D;)FI%P1ML?
MMH9Q'!T>7<S._+)WN-,!YDV5I.R"RL#DC&!*I*C-1\#[BMM5ATR(QUCC+&CL
M4&-):@6M428KL)I)0[Y]2Z>_J4-\J6A U(*HE/]A%C2<B$U[951N@JI*0R6=
M)R5XZI$LR[C@M 1F@!-E1@;.#]V)EHJ;)F2;,TD/A-ON=1=2)82[F3=T0'6G
MD<#E8K/X?T51)MPX03)-G0*7.& R);Y$,&-XQNOPD&E)["X,L8**L@F&"?14
MG%*8UOR4/-)H85X9JK,QM3CVEMH1NJX%</EZEI8D\GVOT]^-.U$4>:FT'0SW
MZZTO'[5KDK?]ZFV.,<%B3HZ;T[CC,E:B'\]BU7VI3\)G ZY O?!CW)#T2MIZ
MUK6G[9_BJ!Z0?\WKWPPI6KC$"\P(&G4_[P:@Z]%=;ZPJ_;B<*TO#UR]S^MNA
M=@;T/5/4:<W&.6C_GY,_4$L#!!0    (  AXJE:0IO5S%P8  '8/   9
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
M:W-H965T<R]S:&5E=#$X+GAM;)56VV[;.!!]]U<,U*!/JG6Q?&EJ&XC=S6Z
M;1 TZ>[#8A]H:2P1H4@M2=?Q?GV'E&*[B&,T+Q(O,V?.S!R1FFZ5?C05HH6G
M6D@S"RIKF\LH,GF%-3-]U:"DG;72-;,TU65D&HVL\$ZUB-(X'D4UXS*83_W:
MG9Y/U<8*+O%.@]G4-=.[!0JUG05)\+SPE9>5=0O1?-JP$N_1?FON-,VB/4K!
M:Y2&*PD:U[/@*KE<9,[>&_S%<6N.QN R62GUZ"8WQ2R('2$4F%N'P.CU'9<H
MA ,B&O]UF,$^I',\'C^C7_O<*9<5,[A4XF]>V&H63 (H<,TVPGY5VS^PRV?H
M\'(EC'_"MK4=DG&^,5;5G3,QJ+ELW^RIJ\.1PR1^Q2'M'%+/NPWD67YFELVG
M6FU!.VM"<P.?JO<F<ERZIMQ;3;N<_.S\5EF$)($/<,TEDSEG FYDVVQ?M15U
M$GY'56K65#R'*VJ]F4:68CN$*._B+-HXZ2MQ!O!%25L9^$T66/SL'Q'G/?'T
MF?@B/0OXA>D^#)(0TC@=G,$;[ LQ\'B#,X4P8-51'>XMLT@"M"?S;>&RTW#N
M6[HT#<MQ%M#'8E!_QV#^_ETRBC^=(9OMR6;GT.=OZ17\\X!/%A9"Y8__GDKD
M;*C3B21)O_<F#@\5PEH).@*X+,&RE<#N'.#_N[+3]E+5#9.[]^\F:3+^9$#2
MB628H-W5#LH#H,;2!:*0WLU6&A'J5ESHQ 4DC;S::P.8+-P@O>Q==SX/WN=8
MD+V]3\_YN$?:NSW+H/=-<DO1O$H,7$ R"$<?LS".8S<9A_%XY":]&VE12U\>
M*E82^U483H9^=ZFD48(7S&$=<O9PDS@^P(U&B9^<9P5,HS^F"J")2S97&VDU
M)WLN84N6%:B-[LX6U,9[D#@<@3Y<O[FLX7'WB)!$[7-A3:/5$R==H-C!1>;3
M]5X7V=B7*23.ID%_+HM=Z/BUB:VUJF'))"M8'VY5E\(.%$5R]%B;V<\-V)+,
M#"\E7_.<2>L^Y5.RRD_6N_\K"O5%HAH;4.N3V$+)\H.@;"A[8]"^UB(/<**<
MGS''>D4I=JLDV8,NCS>/1/KG+\5\(=8LS$;/XLK"P20^)=5PD$Z\#8U&Z4NY
M6F7)[&76%S ,QY-)!T_CS#O#J9,O.KJ[2(ZEOZ%-V_+V&MNO[G\"KMJ[[V#>
M_D%0K4I.W1&X)M>X/QX&H-M;N9U8U?B;<*4L:=\/*_J10>T,:'^MZ!+H)B[
M_M=H_@-02P,$%     @ "'BJ5N8BMLF4 @  T@4  !D   !X;"]W;W)K<VAE
M971S+W-H965T,3DN>&UL?51-;]LP#+WO5Q N4&Q %B=.^H$V,="D*[I#AZ!I
MM\.P@VK3L5!9\B2Z:?[]*#GU4B#-Q18EOD<^4>1D;>RS*Q$)7BNEW30JB>J+
M.'99B95P?5.CYI/"V$H0FW85N]JBR .H4G$R&)S&E9 Z2B=A;V'3B6E(28T+
M"ZZI*F$W,U1F/8V&T=O&O5R5Y#?B=%*+%2Z1'NN%92ON6')9H7;2:+!83*.K
MX<5L[/V#PT^):[>S!J_DR9AG;WS/I]' )X0*,_(,@G\O.$>E/!&G\7?+&74A
M/7!W_<9^$[2SEB?A<&[4+YE3.8W.(\BQ$(VB>[.^Q:V>$\^7&>7"%]:M[PE'
MS!I'IMJ"V:ZD;O_B=7L/.X#SP0> 9 M(0MYMH)#EM2"13JQ9@_7>S.8706I
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
MDCV4_*?U.I0ZG=E[&<ZBN+QV+5"E8],BY,"!:Q^90\53$*\;XS;L:<56$*%
MZ4!"PBR,TG7*C&^<%ZP>JU+*,\7[:EUI5-+:M:84:<  $N92);YM01/EDGHB
MKR&_'9#4T,I*P6U5Z_CPZZQK6KIG7^C R0]B;4U^%DD*% PN*L2*/B?7Y-R^
MDI*=CH_.KWX/:3@Y>KUMB_XN#['6<J7+I\J94EJM88A8@N%MJWT^]Y*4N"(-
M."AO-GNX6FY26U*I@P2JEZE-,=L6S1Y)[>:"WK)SF/BU1%2ZM'GG*GT@C,$4
MV275-&@WM3!9<*/62-DW'2OXV#?91T.YIT/_\D<O=K#(6J:M"25>[O6%\*FG
M-PVVDPI@HU<Z[>MV1?"0[Y28[Q+1SY'@IMV'3YWMH][M6[-?I3=&H'2@YHMX
MM[I[QISFV_O!/+^!<.FM-$(VO(3K>/@>KP:?WQ5Y$EV3[O*%BW@9I&&%IQA[
M,<#WI<,UUTUD@]WC;OX?4$L#!!0    (  AXJE80"R"F704  #0,   9
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
M]TD/[EA'=\ZBYDP8.(0D#=,T#N,X=DX6QLG,.0>/-(# )31:%6@,N)/,ASG
MU,=<<<GINI:P4:HT, MGQXD/.0V3Z<2''$)*QNED2$!.=GKBG5U-CK8N?XUZ
MXT?<0*%::?LY&'?'5^2\'YZ_X?T31(W8<&E X)J@\=')- #=CW7O6-7X45HI
M2X/IS8I>0M0N@,[7BJ[7X+@$X]N:_P%02P,$%     @ "'BJ5E(BXP-_ @
MFP4  !D   !X;"]W;W)K<VAE971S+W-H965T,C8N>&UL?53O;],P$/V^O\(*
M"($TEC1IMS+:2.LV!!)#U5K@ ^*#DUP;:_X1;&=M_WO.=AJ*U/5+<^?<>_>>
MT[O)1NDG4P-8LA5<FFE46]M<Q[$I:Q#47*@&)+Y9*2VHQ52O8]-HH)4'"1ZG
M27(9"\IDE$_\V5SG$]5:SB3,-3&M$%3O9L#59AH-HOW!(UO7UAW$^:2A:UB
M_=[,-69QSU(Q =(P)8F&U32Z&5S/AJ[>%_Q@L#$',7%."J6>7/*EFD:)$P0<
M2NL8*#Z>X18X=T0HXT_'&?4M'? PWK-_\M[12T$-W"K^DU6VGD;CB%2PHBVW
MCVKS&3H_(\=7*F[\+]F$VA%V+%MCE>C F LFPY-NNWLX (R3%P!I!TB][M#(
MJ[RCEN83K39$NVID<X&WZM$HCDGW4196XUN&.)M_4Q;(%7E/;LI2MU"1KXP6
MC#/+P)"W2UIP,.\FL<56#A"7'>TLT*8OT&;D04E;&W(O*ZC^Q\<HL=>9[G7.
MTI.$#U1?D&QP3M(DS4[P9;WOS/-E)WP;$OP=LQ?0P^-H-RG7IJ$E3",<!0/Z
M&:+\S:O!9?+QA+9AKVUXBCU?X.15+0>B5D<_RR\OFRQA:\F,J_+I]S$')WL<
M=X"77-;NEL_NH 11@/:)NW+WDY[-Z4XKS@EL<2D8E$)E12S=8M30G5?UFF39
MU7F2)!@-LK&+SFZ5$,RX.0Z(0LG6'&#<V1HD:,IQ3(-A?F!XE'C"RP\C3[=4
M]H5";#[>-Q]GF8^.?9#X8& $Z+5?"X:4JI4VS$Y_VF^>FS!P_\K#VL([6S/T
MQ6&%T.3B:A01'59!2*QJ_/@5RN(P^[#&[0G:%>#[E<*_8I>X!OT^SO\"4$L#
M!!0    (  AXJE9(Z<U?[0(  ',&   9    >&PO=V]R:W-H965T<R]S:&5E
M=#(W+GAM;)5546_:,!!^YU><LFI:I8PX":'  *FTG;:'5JATV\.T!Y,<)&IB
M9[8IW;_?V8$,)(JTE\1V_'WW?7?V9;R5ZEGGB 9>JU+HB9<;4X^"0*<Y5EQW
M98V"OJRDJKBAJ5H'NE;(,P>JRB!BK!]4O!#>=.S6YFHZEAM3%@+G"O2FJKCZ
M,\-2;B=>Z.T7'HMU;NQ",!W7?(T+--_JN:)9T+)D185"%U* PM7$NPY'LY[=
M[S9\+W"K#\9@G2RE?+:3K]G$8U80EI@:R\#I]8(W6):6B&3\WG%Z;4@+/!SO
MV3\[[^1ER37>R/)'D9E\X@T\R'#%-Z5YE-LON/.36+Y4EMH]8=OL[0\]2#?:
MR&H')@55(9HW?]WEX0 P8&\ HAT@<KJ;0$[E+3=\.E9R"\KN)C8[<%8=FL05
MPA9E811]+0AGI@_2( S@(\RX+E+@(H/;HMP8S.".*U&(M88Y*KB1545)7.1<
M(7QXXLL2]>4X,"3!$@7I+MRL"1>]$2Z&>RE,KN%.9)@=XP.2WNJ/]OIGT5G"
M>ZZZ$(<^1"R*S_#%;3YBQQ>?R8>&QM\I>PVZ=QIM;]!(USS%B4=71*-Z06_Z
M_EW89Y_.:.NUVGKGV*<+NI'9ID20J^/BN*KX)TKXTQF!)WPU,"ME^OSKE*>S
M44][HAL!)B?F7"$>U;1#%4ES6Y*.+8E]1)T'ZBZ%2&5%9T=L*E3<2'4)%Y D
MD<\8HU'H)Y$;=YP;#1\R%)).O-LZZC3FMNZ6D3/^0B1KA+0YE[K!4-?1AA)
MF8$P\L.$^:Q_!6'LLV3@#Z["SG66C2"SZ:%F +A:47>P^=SS&$H2R-IV# V]
MV$_B!$+&_'XX[.RS^I\BAK'?9Y$5$29#OS=DG;9X-17O$+RW>0&LRQ+W"J,V
M[M$JG#I0P4$CH"RO7;O3%&(C3-,3VM6VHUXWC>3?]J8=4QG7!>6@Q!5!6?<J
M\4 U+:Z9&%F[MK*4AIJ4&^;T5T!E-]#WE:2KM)O8 .U_9OH74$L#!!0    (
M  AXJE:M_D9EG ,  )()   9    >&PO=V]R:W-H965T<R]S:&5E=#(X+GAM
M;+5636_C-A"]^U<0VD71 FHDZ]-.;0-VLD7WL(O SK:'H@=:&EM"*%(E*=OY
M]QU2LN( CC8MT(M%2C-O/MZCA[.CD$^J -#D5#&NYDZA=7WK>2HKH*+J1M3
M\<M.R(IJW,J]IVH)-+=.%?,"WT^\BI;<6<SLNP>YF(E&LY+#@R2JJ2HJGU?
MQ''NC)WSBW6Y+[1YX2UF-=W#!O2W^D'BSNM1\K("KDK!B83=W%F.;U>)L;<&
MOY=P5!=K8BK9"O%D-I_SN>.;A(!!I@T"Q<<![H Q X1I_-UA.GU(XWBY/J/_
M:FO'6K94P9U@?Y2Y+N;.Q"$Y[&C#]%H<?X.NGMC@98(I^TN.K6T:.R1KE!95
MYXP95"5OG_34]>'"8>*_X1!T#H'-NPUDL[RGFBYF4AR)--:(9A:V5.N-R97<
MD++1$K^6Z*<77X4&,O;)SV1I^E/J9R)V9-4HM%.*;&"/#&A%?GRD6P;JIYFG
M,:KQ];(NPJJ-$+P1(21?!->%(I]X#OEK?P^S[5,.SBFO@D' +U3>D'#LDL /
MP@&\L&]!:/'"@18HTM9WK;S6.[KN;0[-K:II!G,'3X4">0!G\<.'<>+_,I!;
MU.<6#:$O-G@(\X:!(:7C@JRA%E*7?$\^\_94HKQ=LGWN+?ZTQ9!'.&FR8B)[
M^NM:78.1K]>%!X'H I$+"?"*UQ&RDA6&EI&AQ?P$HU53LMPDNFGJFCV3CV3B
M)FCB^SZNQ[X;A*G9C.Y+50MEDWZ02(<]JF19UU0"([$[3J;6*76C(+(>=X(K
MP<J<:L@)QS\O19$^@QJZ$]\_ATC=)&GC#9 1]V3$@V2L(1,\*UEI.VXH6<,!
M> -D)T7U<E:T(*_2>Q\=@['_)SJF<7+N%#;J/5RD$]M_M$]]V]C1H]"4$=5)
MK^29J,!\CEH20C=,)M;P&Z<,J[<MR81$$>.2B /( J<)@1,.&H4<(FR4=D'"
M:4LW9G(H[2! Q9^#:'HRYE%+<!0'UY7167\D<6MAJXV#X'NR2'I9)/]2%DNE
M '5PJ8K_*(K!R-=%\<+\/610;4%^5P:A&TW.0D"^IO$[A#!V@^GDS%*07I$"
M;;L0N6?-X*KM^AM2Z!R0SL3OD/TTN4#.+AO862.M[B2*NNQC-^VRND:L=S$G
M*Y![>QM0"-MPW8[,_FU_X5BV<_;%O+VM8)?W)5>$P0Y=_1LSWV5[ V@W6M1V
MZFZ%QAENET;F((T!?M\);&FW,0'Z:]CB'U!+ P04    "  (>*I6%38M$_@"
M  "K!@  &0   'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6R-5=MNVS ,?<]7
M$%XQ;(!;7W-9EP1H>MD*M$71R_8P[$&Q&=NH+&62TK1_/TIVW7;-@K[8DDP>
MGD-2]'@MU9TN$0T\U%SHB5<:L]P/ IV56#.])Y<HZ,M"JIH9VJHBT$N%+'=.
M-0_B,!P$-:N$-QV[LTLU'<N5X97 2P5Z5==,/<Z0R_7$B[RG@ZNJ*(T]"*;C
M)2OP&LWM\E+1+NA0\JI&H2LI0.%BXAU$^[/4VCN#'Q6N]8LU6"5S*>_LYC2?
M>*$EA!PS8Q$8O>[Q$#FW0$3C3XOI=2&MX\OU$_J)TTY:YDSCH>0_J]R4$V_D
M08X+MN+F2JZ_8ZNG;_$RR;5[PKJU#3W(5MK(NG4F!G4EFC=[://P'H>X=8@=
M[R:08WG$#)N.E5R#LM:$9A=.JO,F<I6P1;DVBKY6Y&>F%](@1!'LPDDEF,@J
MQN%4-,5V69M3)>$;RD*Q95EE<$"EU_#IALTYZL_CP! )"Q5D;<!9$S#^3\ $
MSJ4PI89CD6/^VC\@\IV"^$G!+-X*>,[4'B21#W$8)UOPDBXCB<-+MF1$0Z-O
MD[S&.]WL;>_0OEZR#"<>71*-ZAZ]Z<</T2#\NH5;VG%+MZ%/K^E.YBN.(!=P
MA?<H5@@+)6LX?C"H!-7NT+4,*@U,Y' F1;%[1FV?PX'6:+0/\\<7U22'IIZ_
MG%ZXP0<#,RZSN]^;I&\EMUDZ71TP)2&7"O%5Z7M4N*RTE>O9RME'W+N@,:09
M9=[R+)Z[3F%!W=B[%94A+=>&V1KM0)3X@R^I'X:AW0S]<#BPF]ZI<.FP'4P2
MH]"=0G_4=U\/I="25SFS6**+Z.!&8?@,-QA$SN&9Z1%F6,]1_4/;Y9F[/#.7
MY_?13_UT\!0N]9-1N(F\G\0C9T.K0?Q6@)&&S/@;!CO0]X>C40M/Z]0YPZ8V
M#%X,$&J>PHU)#9E<"=/,DNZTF\0'S0!Z-F_&..6JJ(0&C@MR#?>&?0]4,QJ;
MC9%+-X[FTE"GNF5)?Q-4UH"^+R1=P'9C W3_I^E?4$L#!!0    (  AXJE:(
MH&UCF0(  )8%   9    >&PO=V]R:W-H965T<R]S:&5E=#,P+GAM;'U4[V_3
M,!#]OK_B%":T265)D_Z81AMI'2"0-JBV 1\0']SDVEASXF!?UNV_Y^RD84A=
MOR0^^][S>V>?9UMM'FR!2/!4JLK.@X*HO@A#FQ58"GNF:ZQX9:U-*8A#LPEM
M;5#D'E2J,(ZB25@*607IS,\M33K3#2E9X=* ;<I2F.<%*KV=!\-@-W$K-P6Y
MB3"=U6*#=TC?ZZ7A*.Q9<EEB9:6NP.!Z'EP.+Q8CE^\3?DC<VA=C<$Y66C^X
MX$L^#R(G"!5FY!@$_Q[Q"I5R1"SC3\<9]%LZX,OQCOV3]\Y>5L+BE58_94[%
M/#@/(,>U:!3=ZNUG[/R,'5^FE?5?V+:YTTD 66-)EQV8%92R:O_BJ:O#"\!Y
M] H@[@"QU]UNY%5^$"32F=%;,"Z;V=S 6_5H%B<K=RAW9'A5,H[2KYH0A@F\
M@VMD<Q9.[L5*H3V=A<3T+BG,.JI%2Q6_0I7 C:ZHL/"QRC'_'Q^RK%Y;O-.V
MB \2W@AS!LEP '$4)P?XDMYKXOF2 UXMM/[VV6O1H_UHUQT7MA89S@.^_A;-
M(P;IVS?#2?3^@+91KVUTB#V]1FL1!_"M1B-(5IOV/ 9P+<5**DG/ R -*X2E
MD/D ;@0UAF?AE_<#]_A$L% Z>_B]S]K!S?=;X^IGA2O_D2O_T2VZ%G?"^(-0
MMD>MU_YPX!BFDV0019%+'L'H?+0+QI!,QCZXUR04K!L6CNXJR[(I03F74(MG
M;G2R,!Q,AK'/=@4!6=8-80ZR(F1A!"?3J5N%TXZMA:NN1I*/]Y@YQHG?$?:=
M2_BB5THT&_\B6,AT4U';-OUL_^A<MKWV+[U]L;A"&UE9%K%F:'0V'0=@VE>@
M#4C7OO-6FKB/_;#@AQ.-2^#UM>8;V05N@_XI3O\"4$L#!!0    (  AXJE9?
MN 6)"P4  !P;   9    >&PO=V]R:W-H965T<R]S:&5E=#,Q+GAM;,U9;6^C
M.!#^*Q9W.G6EM@'RUO:22&EH]_JAW:CM[NETN@].F 2K@+.V29K3_?BS#8'0
M$+?ILJO]DH"9>3SSS'CPX-Z*LB<>  CT'(4Q[UN!$(N+1H-/ X@P/Z4+B.63
M&641%O*6S1M\P0#[6BD*&ZYM=QH1)K$UZ.FQ,1OT:")"$L.8(9Y$$6;K2PCI
MJF\YUF;@GLP#H08:@]X"S^$!Q.?%F,F[1H[BDPAB3FB,&,SZUM"Y\)QSI: E
MOA!8\:UKI%R94/JD;F[\OF4KBR"$J5 06/XM801AJ)"D'5\S4"N?4REN7V_0
MK[7STID)YC"BX9_$%T'?.K.0#S.<A.*>KOZ S*&VPIO2D.M?M,ID;0M-$RYH
ME"E+"R(2I__X.2-B2\%M[U%P,P7WA8+3VJ/0S!2:+Q4Z>Q1:F4)+,Y.ZHGGP
ML,"#'J,KQ)2T1%,7FDRM+=TGL8K[@V#R*9%Z8G!'!: F.D$/@DZ?3A2%/AK1
M2.85QSHR1QX(3$*.'N%9)#C\((4_/WCHZ-</:)PP0"1&CP%-.(Y]WFL(:92"
M;DPS RY3 ]P]!C31+8U%P-%5[(-?H>^9]1W7 -"0;.24N!M*+ETCXBUFIZCI
M'"/7=IL5!HW>KNY6^6-6]V":J]L&;YIY@)L:K[4'[R' #$XN=^,Z9 S'<Y!K
M6*#)&FW+C?%:#P]7F/G'Z--"*?!C]%%J"*X"/@9&J*]&**\,>FI46QNE:L]R
M()U9;K-H-%N5NPN^P%/H6[*><6!+L :__>)T[-^K.*T)K,1P*V>X];T9OL:$
MH2\X3  -N2S!&\*OGA>R/DIYCRR)#[&/[K& *KY3$\\,?!N=.)3OFL!*?+=S
MOMMOYCOGL:!ZDZ_H[UN()L#^J:++.,.!9(SJ!/-J BLQV\F9[7P;LRH?8UZ9
M@"ER9RL!F[;],@=WA=RS'2G/:.0[*>CF%'2_C8([&B^!JS69K=T1Y4*."K26
MN[1[F-)Y3/X%^6 8T41I/%*!PRK*NKN457!FM/?0[*H)K$3M64[MV8^B-GW]
M(+GMW0RG6Y6_ +,/552;+6O)"3#CJ(VB="OA-I&/UU4OMI$1Z=!PU 16"L=Y
M'HYSH]/WDFI&]-M%[_V,]=((=6B]K!/,JPFL1*%C%[MG^[M5S QZ>_T[N]5P
M5"'F=G>+IMG0]Q*QU48X/TW=S$S99J35JB#.:/&A>5876IE?M^#7_6F+YRNF
M=3=5T^GNK9IFB(-C41-:.19%1^686ZJ;>"HI)TM XQ#'NE$S%D\SW*'5LU8T
MKRZT,I5%Z^28>R?9+\GD25] ,F7Q@L@UGW9*7&:GGC!-U>M$J(\--[(]PI+_
M2IY;.TVG+JB[E:'67J@NM#*%13?DF-NAQP!<VVZEN9AF824YM;8\M:)Y=:&5
M&2RZ'N?M;<\[&_B[1/&.Z&R3N\,E)B&>A*"35W\XJ8Q*9R=EVW9ERM;4%&6$
M[T[K-.VVVW;R:<M<%NV3\_;^Z0=^;LJL,GUO>EW$JQ"1T3COMNT]M!2MCV/N
M,$RO#/0?.F@O;I[JX)5<:T-3%UJ9YJ*E<<P]30W9=_4U(6*-;F(9D40]X.B3
M".3:%H$,W-[<1$?RDNNU7[V'.G\]05\5\<SN'TIO8^O8( (VU\<O'$W5]CO]
M7)Z/YD<\0WVP\6+\TKD8I0<U!4QZ;G2+V9S$'(4PDY#V:5=ZQ]*CF/1&T(4^
MG)A0(6BD+P/ /C E()_/*!6;&S5!?B V^!]02P,$%     @ "'BJ5M/(H#8-
M P  80L  !D   !X;"]W;W)K<VAE971S+W-H965T,S(N>&ULQ99M;]HP$,>_
MBA7M12NU)$X@0 5(A>[I1;>JU=;7)CF(U<3.;%.HM \_/X1 5\(H0MJ;)'9\
M=[_[Q_'=8,G%D\P %%H5.9-#+U.JO/)]F610$-GB)3#]9L9%090>BKDO2P$D
MM49%[H=!$/L%H<P;#>S<G1@-^$+EE,&=0')1%$2\C"'GRZ&'O?7$/9UGRDSX
MHT%)YO  ZD=Y)_3(K[VDM  F*6=(P&SH7>.K,6X; [OB)X6EW'I&)I4IYT]F
M\#4=>H$A@AP295P0?7N&">2Y\:0Y?E5.O3JF,=Q^7GO_9)/7R4R)A G/'VFJ
MLJ'7\U *,[+(U3U??H$JH8[QE_!<VBM:5FL##R4+J7A1&6N"@C)W)ZM*B"V#
M*&PP""N#T'*[0);RAB@R&@B^1,*LUM[,@TW56FLXRLQ7>5!"OZ7:3HV^<04H
M0I?H0?'D"=)+DV**)KS0WUT2JUSU$GTO[?#:"$G5"SJ[ 45H+L\'OM(HQJ&?
M5&''+FS8$#9"MYRI3**/+(7TM;VO4ZCS"-=YC,.]#F^):*$(7Z P""/T ?E(
M9D2 K&Y[(D2U4I&-T&Z(X+*72&]MJ0A+*9M?H/7D&655I'/T>V=,EX0+T;$A
MS _S/&KC(,:=@?^\ ZU=H[7?C_9H-Z3^EN09A/[!4"EH I8TY7E.A$0E",=J
MH#>:[0)W -TM\*C50-VIJ3M[J3\+PC3?^T7LO!$QV$T2UR3Q822GU<P%C?_-
MV:TYNWLY/ZY )%0>HUGWC6:7..B'G0:B7DW4.Y3HM-KU=NRW<#=KOV;M[V6=
M$);H:I#ZL"JIT'==TV9 C]J"_4.W( XV!W%P--YIM:U #MB8>*N,X$..H/<K
M6?G=EC(*<!0W'"XXW!"%__M0K A>[](8-Y!O"@T^K-* ^[G(-(<C='U;:L)>
M'#?JNJDU^+!B\XKNQ+KNK#;]O\C]K:ZG #&WO9U$"5\PY1J@>K;N'Z]=U[19
M[II/W3W,J<XIAYDV#5I=+9MP_9P;*%[:'FK*E>[([&.F>V 09H%^/^.ZCZH&
M)D#=58_^ %!+ P04    "  (>*I6HS3XI-<"  "U!P  &0   'AL+W=O<FMS
M:&5E=',O<VAE970S,RYX;6R-54U/XS 0_2M6M >0V.:[+:BM!*W0<EB$8%D.
MJSVXR;2Q<.RL[5+X]SMV0K8T:9=+8H_GO7GCCYG)5JIG70 8\EIRH:=>84QU
MX?LZ*Z"D>B K$+BRDJJD!J=J[>M* <T=J.1^% 1#OZ1,>+.)L]VIV41N#&<"
M[A31F[*DZNT*N-Q.O=![-]RS=6&LP9]-*KJ&!S"/U9W"F=^RY*P$H9D41,%J
MZEV&%XN1]7<./QEL]<Z8V$R64C[;R4T^]0(K"#ADQC)0_+W '#BW1"CC3\/I
MM2$M<'?\SG[M<L=<EE3#7/(GEIMBZHT]DL.*;KBYE]MOT.236KY,<NV^9-OX
M!A[)-MK(L@&C@I*)^D]?FWW8 83) 4#4 *+/ N(&$.\#X@. I $D;F?J5-P^
M+*BALXF26Z*L-[+9@=M,A\;TF;#'_F 4KC+$F=FM-$!2\I7<B!<01BH&>F]V
ML@!#&=>G:']\6)"3+Z<3WV!LR^!G39RK.DYT(,YWJ@8D#L](%$1Q#WQ^'+Z
MK(5''^$^9MRF';5I1XXO.<!W3[>XBP84HUSW95/#APYNG\[++(PB?$M!,/%?
M=G7W.,9!.-YU_* P;A7&1Q4^X7,A3)!*R0QTK\::(-T)C9'CKL2N'Z:2'E28
MM J3HPJOF6!X\7*REC+O%9AT H_'P[ KL.MW'J;)08%I*S ]*O#]$K^=D5LP
M?0+3SN%%27">=!7V.<;GHX[CXKBB7^'O(Y=WZ.T91FVBH__1_BB 9%+D6)#Q
M1'"D)6<YWO <RR*G(@-2MQ&JB5P1?$]0+D&U;^J,%+BR!+ W#BJJ$+C13*SQ
M#M;-Q5;IE9(E,1B*;G)F/A/(%-00NSSH2]S?*5PEJ+5K !I9-\+43Z6UUCUF
MCCW&U>(]^^7P8C'LLX^:GN3_HZ\;&A:D-1.:<%AAJ& PPI-3=9.H)T96KFPN
MI<$B[(8%]E50U@'75Q)+9S.Q =I./?L+4$L#!!0    (  AXJE8JJ.XHB@8
M (DM   9    >&PO=V]R:W-H965T<R]S:&5E=#,T+GAM;*U:46_B.!#^*Q9W
M.FVE7DD,H=!KD2CQ:BL=W:K=O7LXW8-+#$2;Q%G;*:UT/_[LD":$!"]9S4L;
M@N>S\XUGF&_BZRT7W^2&,85>XRB1-[V-4NE5OR^7&Q93><%3ENAO5ES$5.F/
M8MV7J6 TR(WBJ(\=9]2/:9CTIM?YO0<QO>:9BL*$/0@DLSBFXNV617Q[TW-[
M[S<>P_5&F1O]Z75*U^R)J:_I@]"?^B5*$,8LD2%/D&"KF][,O2)X; SR$7^%
M;"OWKI%YE&?.OYD/=\%-SS$K8A%;*@-!];\7-F=19)#T.KX7H+UR3F.X?_V.
M_C%_>/TPSU2R.8_^#@.UN>F->RA@*YI%ZI%O/['B@3R#M^21S/^B;3'6Z:%E
M)A6/"V.]@CA,=O_I:T'$G@$>'3' A0$^-,!'# :%P>!4@V%A,#PP<(='#+S"
M('_T_N[9<^)\JNCT6O M$F:T1C,7.?NYM>8K3,Q&>5)"?QMJ.S6]YXJA$?H=
MD>]9J-[07?+"I-([0:$P05^3)4\DC\* *A:@V6H51J&^1!]\IF@82?2%O:J,
M1F?7?:578S#[RV+FV]W,^,C, [3@B=I(1)* !2WVOMW>Q1: OJ:AY *_<W&+
MK8@+*B[0P#U'V,$#]/7)1Q]^/4,K]=LO[N7XCY85SD_'P^]X;0]JA_'9\B08
M<C*,XUG8&I0[9Y#C#8_@D5>=K"1#7SB:+?7F$2S?/(GBXJUM-^S01CF:25\O
M4\\9C!S'N>Z_['/:'#=RQX/&.-^Z.I-?KV1*E^RFIQ.H9.*%]:;:D2.GS9$$
M"*Q&Y+ D<F@E\D'P)6.!1"O!8_1$(X;X"NF[099G4323DBEYKIE6-&JC=H?O
M[5%V2&IS!/;&34ZM"^W**1!8C5.OY-2S<GJG$U>LT]2?7,JS';%%@ELPM>'!
M7IZ3;8QZC4WH.I/F7FT.&S9'^=:E=F45"*S&ZJAD=61G]=Z_FZ'_T"<J8IZ\
MH7\6+'YFXM\V!JU('1]Z#@GF0X(1(+":.RY+=UQ:W7&?&?9-LGC229>U;N3+
M1N /#_:P=8ZNW$*"$2"P&K?CDMOQ*=Q^?N<6?=XFK57*[;C!\." 8>M,71F&
M!"- 8#6&)R7#DVX,/^IDW$[QI$&Q>T"Q=:JN%$."$2"P&L6N4U7WSD]E;'UK
M09-LI75:)L)DC6ZS, K,15%W2&MRM\_:-;N#HOF@: 0*K>Z_/77F6OTWT^+?
M)/A'1B-$I#+:2WLH94*7,A^>OF=4E]T?.5=GVJ,6I7);S%.+H4%+16-?3V=?
M0*(1*+2Z+W#E"PP32W.>J^6%_BM"[3>:!.B);8OH2D6HM;-X0WXH4R[I<Y2[
M5+&BV$]3[=/('G[6A78./T@T'Q2-0*'575Y)7->N<>'";] ,/^RVA!^DJO5!
MT0@46MT7E4IV[3+9$GZPP04I@N>@:#XH&H%"JSNTDNBN7:/#!9?7[&XT&T9S
M^W(ZNP)4U4.AU5U1Z7KWYX1]XZ=-5^L=*T70/@ HF@^*1J#0ZBZL>@&NO1D
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
MP4L%5_:7[&I;SR'I1FF1U\[((&=%]:6/=2(.'!"GVR&H'8+O':(3#F'M$-I
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
ME=MOT/EQ C/)M?LGVRXV\$C6:".K#HP**B;:.]UU>=@#(,\P(.H T4O Z U
MW %B9[15YFPMJ:%IHN26*!N-;';@<N/0Z(8)6\4[H_ I0YQ)KZ4!$H;D$[E@
M@HJ,44XN1?MVN#2OL/3D*\A"T;ID&9GANZ+)T1(,95R3>]B9AO*/2/!PMR1'
M[S\FOD%=EMW/.@WS5D/TAH:87$EA2DV^B!SRYW@?_?2FHB=3\^@@X155)R0.
MCTD41/& GL7?PZ,#<N(^Q['C&[W!=PL;$ V0M9(56:!5A2\OUMF49.$J#.H8
MDY[Q)F>B(#.M :^<W-/=4#+;S29N,WM(-VD8GP7VE_B;?9<#@:>32;@?^,S/
MJ/<S.NAG,;N>+6=#T@[B;$,ZUS7-8.IAQ]&@-N"E']Z%D^#S4)'^$=DSB^/>
MXOA_EFS\JA*C\>MZ#42=CEY7R]\[[:BC<$U0DTPVPK1GI%_M^^S,M9<7ZW/L
MOVV[_$/3-F\\ 043FG!8(V5P<HK25-L0VXF1M>LI*VDP&6Y8XC<$E W YVN)
M?:6;V WZKU+Z&U!+ P04    "  (>*I65H<0T) #  "6#@  &0   'AL+W=O
M<FMS:&5E=',O<VAE970T,RYX;6RM5VUOVS80_BN$-A0MT$:OEIW4-N!8Z1:@
M"8(XV3X,^T!+9ULH16HD;;= ?WQ)2E&D2-'BQ/D0B]0]S_$YWE&\\9[Q;V(#
M(-'WC% QL392YF>V+>(-9%B<L!RH>K-B/,-2#?G:%CD'G!A01FS/<4([PRFU
MIF,S=\.G8[:5)*5PPY'89AGF/\Z!L/W$<JV'B=MTO9%ZPIZ.<[R&!<C[_(:K
MD5VQ)&D&5*2,(@ZKB35SSR+7 (S%7RGL1>T9:2E+QK[IP64RL1R](B 02TV!
MU<\.YD"(9E+K^*\DM2J?&EA_?F#_8L0K,4LL8,[(WVDB-Q-K9*$$5GA+Y"W;
M_PFEH('FBQD1YC_:E[:.A>*MD"PKP6H%64J+7_R]#$0-H'BZ 5X)\)X"@F<
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
M!_P+B^TUE_6=8?ZCWTBN9G[[9M-)^1;;/JI;S9O]*^#]Z^O7/P!02P,$%
M  @ "'BJ5OTLU:6N 0  P1L  !H   !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN
M<F5L<\W9NV["0!"%X5=!?@"6F5EN$5"EH8UX 0N6BS#8\FX4>/L@*.!8*=*@
M/96UMCS^&W^RUK.O4)7I4)_C_M#$WN54G>.\V*?4?#@7U_MP*F._;L+Y=F5;
MMZ<RW9;MSC7E^ECN@M/!8.3:UQG%8O8ZL[>Z-N$_$^OM]K .G_7Z^Q3.Z8_!
M[J=NCW$?0BIZJ[+=A30OW*5ZGH[N?I#^;7+16V[F1;O<2.%R!RD$:?X@@R#+
M'^0AR.</&D+0,'_0"()&^8/&$#3.'S2!H$G^H"D$3?,'R0!E'! D=; FT%J0
M:R'P6A!L(1!;D&PA,%L0;2%06Y!M(7!;$&XAD%N0;B&P6Q!O(=!;46\ET%M1
M;R706SL?VP1Z*^JM!'HKZJT$>BOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'H;
MZFT$>AOJ;01Z&^IM!'I;9[.$0&]#O8U ;T.]C4!O0[V-0&]#O8U ;T.]C4!O
M0[V-0&^/>GL"O3WJ[0GT]JBW)]#;H]Z>0&_?V>PFT-NCWIY ;X]Z^W?J'=.U
M"O'9\UCC\]])=;K=&YZ/OR\?)SOO^!UG!W_L%K]02P,$%     @ "'BJ5B;Z
MAZ>U 0  W!L  !,   !;0V]N=&5N=%]4>7!E<UTN>&ULS9G-;L(P$(1?!>6*
MB+&=TA\!E[;7ED-?P$TV)"*)+=M0>/LZX4=J1:,B*G4NL1+OSHR]TG?)]&UG
MR VV==6X651X;QX8<VE!M7*Q-M2$G5S;6OGP:I?,J'2EEL3$>#QAJ6X\-7[D
M6XUH/GVB7*TK/WC>AL^NU,TLLE2Y:/"X+VR]9I$RIBI3Y<,^VS39-Y?1P2$.
MG5V-*TKCAJ$@8F<=VIV?#0Y]KQNRMLQHL%#6OZ@Z5+%MQ9S?5>3B?HDS&76>
MEREE.EW7H25VQI+*7$'DZRK>BP[[G7VX8=H_^=7^G4R?8:A<6&U<F)BER^V.
M(VF[1R8(D?5E_Q%/CD'ZZO-1.^V,LE]ZA^O]T';5S<.Q;KG^CK_.^*1_80X!
MDD."Y$A <MR Y)B Y+@%R7$'DN,>) <?HP1!(2I'02I'82I'@2I'H2I'P2I'
MX2I' 2M'(:M (:M (:M (:M (:M (:M (:M (:M (:M (:M (:M$(:M$(:M$
M(:M$(:M$(:M$(:M$(:M$(:M$(:M$(6N"0M8$A:P)"ED3%+(F*&1-4,B:_"=9
MW[5>_?7_IG:-:U4V1W_6_=2;?P)02P$"% ,4    "  (>*I6!T%-8H$   "Q
M    $               @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0
M   (  AXJE8F/ANJ[P   "L"   1              "  :\   !D;V-0<F]P
M<R]C;W)E+GAM;%!+ 0(4 Q0    (  AXJE:97)PC$ 8  )PG   3
M      "  <T!  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ "'BJ
M5DN>%&KP!0  S1\  !@              ("!#@@  'AL+W=O<FMS:&5E=',O
M<VAE970Q+GAM;%!+ 0(4 Q0    (  AXJE:ZIM@__ 8  /,A   8
M      " @30.  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4
M"  (>*I6K"4/X. "  "6!P  &               @(%F%0  >&PO=V]R:W-H
M965T<R]S:&5E=#,N>&UL4$L! A0#%     @ "'BJ5FU:ZLNW!   #A(  !@
M             ("!?!@  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4
M Q0    (  AXJE98NXW,>P(  #\&   8              " @6D=  !X;"]W
M;W)K<VAE971S+W-H965T-2YX;6Q02P$"% ,4    "  (>*I6WZF5)&H&   +
M)   &               @($:(   >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL
M4$L! A0#%     @ "'BJ5@C>Z#N!!0  ;!<  !@              ("!NB8
M 'AL+W=O<FMS:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    (  AXJE;/&7KX
MF@0  $P*   8              " @7$L  !X;"]W;W)K<VAE971S+W-H965T
M."YX;6Q02P$"% ,4    "  (>*I6POA%6TL(  #C%0  &
M@(%!,0  >&PO=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ "'BJ
M5L#:;^4Y!P  DA$  !D              ("!PCD  'AL+W=O<FMS:&5E=',O
M<VAE970Q,"YX;6Q02P$"% ,4    "  (>*I6_*43-HP"  "T!0  &0
M        @($R00  >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0
M   (  AXJE99%B3+J0(  -(%   9              " @?5#  !X;"]W;W)K
M<VAE971S+W-H965T,3(N>&UL4$L! A0#%     @ "'BJ5KCRQ2>Z!@  M!
M !D              ("!U48  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q0
M2P$"% ,4    "  (>*I606_)V[,"   D!@  &0              @('&30
M>&PO=V]R:W-H965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    (  AXJE;D"9!@
ME0,  "0(   9              " @;!0  !X;"]W;W)K<VAE971S+W-H965T
M,34N>&UL4$L! A0#%     @ "'BJ5E8%!Z%  P  2P<  !D
M ("!?%0  'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    "  (
M>*I6D*;U<Q<&  !V#P  &0              @('S5P  >&PO=V]R:W-H965T
M<R]S:&5E=#$W+GAM;%!+ 0(4 Q0    (  AXJE;)P^9UHP,  "8)   9
M          " @4%>  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#
M%     @ "'BJ5N8BMLF4 @  T@4  !D              ("!&V(  'AL+W=O
M<FMS:&5E=',O<VAE970Q.2YX;6Q02P$"% ,4    "  (>*I6)!PK#M<#  #@
M"   &0              @('F9   >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM
M;%!+ 0(4 Q0    (  AXJE96 KU0E 0  .@)   9              " @?1H
M  !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ "'BJ5A +
M(*9=!0  - P  !D              ("!OVT  'AL+W=O<FMS:&5E=',O<VAE
M970R,BYX;6Q02P$"% ,4    "  (>*I60&/GC;\"   )!@  &0
M    @(%3<P  >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    (
M  AXJE9M8+*ESP(  !(&   9              " @4EV  !X;"]W;W)K<VAE
M971S+W-H965T,C0N>&UL4$L! A0#%     @ "'BJ5C:>S=E^ @  9P4  !D
M             ("!3WD  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"
M% ,4    "  (>*I64B+C W\"  ";!0  &0              @($$?   >&PO
M=V]R:W-H965T<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    (  AXJE9(Z<U?[0(
M ',&   9              " @;I^  !X;"]W;W)K<VAE971S+W-H965T,C<N
M>&UL4$L! A0#%     @ "'BJ5JW^1F6< P  D@D  !D              ("!
MWH$  'AL+W=O<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    "  (>*I6
M%38M$_@"  "K!@  &0              @(&QA0  >&PO=V]R:W-H965T<R]S
M:&5E=#(Y+GAM;%!+ 0(4 Q0    (  AXJE:(H&UCF0(  )8%   9
M      " @>"(  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%
M  @ "'BJ5E^X!8D+!0  '!L  !D              ("!L(L  'AL+W=O<FMS
M:&5E=',O<VAE970S,2YX;6Q02P$"% ,4    "  (>*I6T\B@-@T#  !A"P
M&0              @('RD   >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+
M 0(4 Q0    (  AXJE:C-/BDUP(  +4'   9              " @3:4  !X
M;"]W;W)K<VAE971S+W-H965T,S,N>&UL4$L! A0#%     @ "'BJ5BJH[BB*
M!@  B2T  !D              ("!1)<  'AL+W=O<FMS:&5E=',O<VAE970S
M-"YX;6Q02P$"% ,4    "  (>*I6FD0]A-$"  !C!P  &0
M@($%G@  >&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    (  AX
MJE8WD"C3;P,  /D*   9              " @0VA  !X;"]W;W)K<VAE971S
M+W-H965T,S8N>&UL4$L! A0#%     @ "'BJ5K"LVY$# @  1 0  !D
M         ("!LZ0  'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4
M    "  (>*I6DI(^KO0!   #!   &0              @('MI@  >&PO=V]R
M:W-H965T<R]S:&5E=#,X+GAM;%!+ 0(4 Q0    (  AXJE:LL@F?S@(  # (
M   9              " @1BI  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL
M4$L! A0#%     @ "'BJ5H\A'KYF P  7 P  !D              ("!':P
M 'AL+W=O<FMS:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    "  (>*I6J4Y[
MRQ<#   ="P  &0              @(&ZKP  >&PO=V]R:W-H965T<R]S:&5E
M=#0Q+GAM;%!+ 0(4 Q0    (  AXJE;"GN7/C0(  *$&   9
M  " @0BS  !X;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @
M"'BJ5E:'$-"0 P  E@X  !D              ("!S+4  'AL+W=O<FMS:&5E
M=',O<VAE970T,RYX;6Q02P$"% ,4    "  (>*I66T!3\I$#  !7"P  &0
M            @(&3N0  >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4
M Q0    (  AXJE;89+EN5P(  .\%   9              " @5N]  !X;"]W
M;W)K<VAE971S+W-H965T-#4N>&UL4$L! A0#%     @ "'BJ5H%@RS=E @
M7P4  !D              ("!Z;\  'AL+W=O<FMS:&5E=',O<VAE970T-BYX
M;6Q02P$"% ,4    "  (>*I6',4/H!X#  !($0  #0              @ &%
MP@  >&PO<W1Y;&5S+GAM;%!+ 0(4 Q0    (  AXJE:7BKL<P    !,"   +
M              "  <[%  !?<F5L<R\N<F5L<U!+ 0(4 Q0    (  AXJE:L
MD9I+' 0  $(?   /              "  ;?&  !X;"]W;W)K8F]O:RYX;6Q0
M2P$"% ,4    "  (>*I6_2S5I:X!  #!&P  &@              @ $ RP
M>&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4    "  (>*I6)OJ'
MI[4!  #<&P  $P              @ 'FS   6T-O;G1E;G1?5'EP97-=+GAM
7;%!+!08     -@ V +$.  #,S@     !

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.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>89</ContextCount>
  <ElementCount>173</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>29</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="apt20230331_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/20230331/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/role/statement-note-1-the-company</Role>
      <ShortName>Note 1 - The Company</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/role/statement-note-3-stockbased-compensation</Role>
      <ShortName>Note 3 - Stock-based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-4-recent-accounting-pronouncements</Role>
      <ShortName>Note 4 - Recent Accounting Pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-5-inventories</Role>
      <ShortName>Note 5 - Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/role/statement-note-7-accrued-liabilities</Role>
      <ShortName>Note 7 - Accrued Liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/role/statement-note-12-related-party-transactions</Role>
      <ShortName>Note 12 - Related Party Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-13-leases-</Role>
      <ShortName>Note 13 - Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-14-income-taxes</Role>
      <ShortName>Note 14 - Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-15-contingencies</Role>
      <ShortName>Note 15 - Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-16-subsequent-events</Role>
      <ShortName>Note 16 - Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-3-stockbased-compensation-tables</Role>
      <ShortName>Note 3 - Stock-based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-5-inventories-tables</Role>
      <ShortName>Note 5 - Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230331/role/statement-note-5-inventories</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-7-accrued-liabilities-tables</Role>
      <ShortName>Note 7 - Accrued Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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/20230331/role/statement-note-10-activity-of-business-segments</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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/20230331/role/statement-note-11-financial-information-about-geographic-areas</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/role/statement-note-13-leases-tables</Role>
      <ShortName>Note 13 - Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230331/role/statement-note-13-leases-</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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/20230331/role/statement-note-3-stockbased-compensation-tables</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/role/statement-note-5-inventories-inventories-details</Role>
      <ShortName>Note 5 - Inventories - Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/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/20230331/role/statement-note-9-accumulated-other-comprehensive-loss</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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/20230331/role/statement-note-10-activity-of-business-segments-tables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/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="apt20230331_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/20230331/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/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/role/statement-note-13-leases-details-textual</Role>
      <ShortName>Note 13 - Leases (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="apt20230331_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/20230331/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="apt20230331_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/20230331/role/statement-note-15-contingencies-details-textual</Role>
      <ShortName>Note 15 - Contingencies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.alphaprotech.com/20230331/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>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 12 fact(s) appearing in ix:hidden were eligible for transformation: apt:NumberOfStoresOwned, apt:NumberOfStoresRented, us-gaap:CommonStockParOrStatedValuePerShare, us-gaap:EquityMethodInvestmentOtherThanTemporaryImpairment, us-gaap:FinanceLeaseLiability, us-gaap:NumberOfOperatingSegments, us-gaap:NumberOfStores, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross -  apt20230331_10q.htm 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-Q" original="apt20230331_10q.htm">apt20230331_10q.htm</File>
    <File>apt-20230331.xsd</File>
    <File>apt-20230331_cal.xml</File>
    <File>apt-20230331_def.xml</File>
    <File>apt-20230331_lab.xml</File>
    <File>apt-20230331_pre.xml</File>
    <File>ex_515016.htm</File>
    <File>ex_515017.htm</File>
    <File>ex_515022.htm</File>
    <File>ex_515023.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="340">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>
{
 "instance": {
  "apt20230331_10q.htm": {
   "axisCustom": 0,
   "axisStandard": 13,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 340,
    "http://xbrl.sec.gov/dei/2023": 30
   },
   "contextCount": 89,
   "dts": {
    "calculationLink": {
     "local": [
      "apt-20230331_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "apt-20230331_def.xml"
     ]
    },
    "inline": {
     "local": [
      "apt20230331_10q.htm"
     ]
    },
    "labelLink": {
     "local": [
      "apt-20230331_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "apt-20230331_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "apt-20230331.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"
     ]
    }
   },
   "elementCount": 267,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2023": 10,
    "http://www.alphaprotech.com/20230331": 2,
    "http://xbrl.sec.gov/dei/2023": 5,
    "total": 17
   },
   "keyCustom": 9,
   "keyStandard": 164,
   "memberCustom": 13,
   "memberStandard": 14,
   "nsprefix": "apt",
   "nsuri": "http://www.alphaprotech.com/20230331",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000 - Document - Document And Entity Information",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information",
     "shortName": "Document And Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "009 - Disclosure - Note 3 - Stock-based Compensation",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
     "shortName": "Note 3 - Stock-based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "010 - Disclosure - Note 4 - Recent Accounting Pronouncements",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-4-recent-accounting-pronouncements",
     "shortName": "Note 4 - Recent Accounting Pronouncements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "011 - Disclosure - Note 5 - Inventories",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories",
     "shortName": "Note 5 - Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "012 - Disclosure - Note 6 - Equity Investment in Unconsolidated Affiliate",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
     "shortName": "Note 6 - Equity Investment in Unconsolidated Affiliate",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "013 - Disclosure - Note 7 - Accrued Liabilities",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities",
     "shortName": "Note 7 - Accrued Liabilities",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "014 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
     "shortName": "Note 8 - Basic and Diluted Earnings Per Common Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "015 - Disclosure - Note 9 - Accumulated Other Comprehensive Loss",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss",
     "shortName": "Note 9 - Accumulated Other Comprehensive Loss",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNoteTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "016 - Disclosure - Note 10 - Activity of Business Segments",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
     "shortName": "Note 10 - Activity of Business Segments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "apt:FinancialInformationAboutGeographicAreasTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "017 - Disclosure - Note 11 - Financial Information about Geographic Areas",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
     "shortName": "Note 11 - Financial Information about Geographic Areas",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "apt:FinancialInformationAboutGeographicAreasTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "018 - Disclosure - Note 12 - Related Party Transactions",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-12-related-party-transactions",
     "shortName": "Note 12 - Related Party Transactions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "001 - Statement - Condensed Consolidated Balance Sheets (Unaudited)",
     "menuCat": "Statements",
     "order": "2",
     "role": "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "019 - Disclosure - Note 13 - Leases",
     "menuCat": "Notes",
     "order": "20",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-",
     "shortName": "Note 13 - Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "020 - Disclosure - Note 14 - Income Taxes",
     "menuCat": "Notes",
     "order": "21",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-14-income-taxes",
     "shortName": "Note 14 - Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "021 - Disclosure - Note 15 - Contingencies",
     "menuCat": "Notes",
     "order": "22",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
     "shortName": "Note 15 - Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "022 - Disclosure - Note 16 - Subsequent Events",
     "menuCat": "Notes",
     "order": "23",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-16-subsequent-events",
     "shortName": "Note 16 - Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "023 - Disclosure - Note 3 - Stock-based Compensation (Tables)",
     "menuCat": "Tables",
     "order": "24",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-tables",
     "shortName": "Note 3 - Stock-based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "024 - Disclosure - Note 5 - Inventories (Tables)",
     "menuCat": "Tables",
     "order": "25",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-tables",
     "shortName": "Note 5 - Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "025 - Disclosure - Note 7 - Accrued Liabilities (Tables)",
     "menuCat": "Tables",
     "order": "26",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-tables",
     "shortName": "Note 7 - Accrued Liabilities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "026 - Disclosure - Note 8 - Basic and Diluted Earnings Per Common Share (Tables)",
     "menuCat": "Tables",
     "order": "27",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
     "shortName": "Note 8 - Basic and Diluted Earnings Per Common Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "027 - Disclosure - Note 10 - Activity of Business Segments (Tables)",
     "menuCat": "Tables",
     "order": "28",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables",
     "shortName": "Note 10 - Activity of Business Segments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "apt:FinancialInformationAboutGeographicAreasTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "028 - Disclosure - Note 11 - Financial Information about Geographic Areas (Tables)",
     "menuCat": "Tables",
     "order": "29",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables",
     "shortName": "Note 11 - Financial Information about Geographic Areas (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "apt:FinancialInformationAboutGeographicAreasTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "029 - Disclosure - Note 13 - Leases (Tables)",
     "menuCat": "Tables",
     "order": "30",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables",
     "shortName": "Note 13 - Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "030 - Disclosure - Note 3 - Stock-based Compensation (Details Textual)",
     "menuCat": "Details",
     "order": "31",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual",
     "shortName": "Note 3 - Stock-based Compensation (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31_AwardTypeAxis-EmployeeStockOptionMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "031 - Disclosure - Note 3 - Stocked-based Compensation - Stock Option Activity (Details)",
     "menuCat": "Details",
     "order": "32",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
     "shortName": "Note 3 - Stocked-based Compensation - Stock Option Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2022-12-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "032 - Disclosure - Note 5 - Inventories - Inventories (Details)",
     "menuCat": "Details",
     "order": "33",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details",
     "shortName": "Note 5 - Inventories - Inventories (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "apt:ExpenseToAcquireInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "033 - Disclosure - Note 6 - Equity Investment in Unconsolidated Affiliate (Details Textual)",
     "menuCat": "Details",
     "order": "34",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
     "shortName": "Note 6 - Equity Investment in Unconsolidated Affiliate (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "apt:ExpenseToAcquireInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccruedSalariesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "034 - Disclosure - Note 7 - Accrued Liabilities - Accrued Liabilities (Details)",
     "menuCat": "Details",
     "order": "35",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
     "shortName": "Note 7 - Accrued Liabilities - Accrued Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccruedSalariesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "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)",
     "menuCat": "Details",
     "order": "36",
     "role": "http://www.alphaprotech.com/20230331/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",
     "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)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "036 - Disclosure - Note 9 - Accumulated Other Comprehensive Loss (Details Textual)",
     "menuCat": "Details",
     "order": "37",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
     "shortName": "Note 9 - Accumulated Other Comprehensive Loss (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R38": {
     "firstAnchor": null,
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "037 - Disclosure - Note 10 - Activity of Business Segments (Details Textual)",
     "menuCat": "Details",
     "order": "38",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-details-textual",
     "shortName": "Note 10 - Activity of Business Segments (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "038 - Disclosure - Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)",
     "menuCat": "Details",
     "order": "39",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
     "shortName": "Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-BuildingSupplyMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "003 - Statement - Condensed Consolidated Statements of Income (Unaudited)",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
     "shortName": "Condensed Consolidated Statements of Income (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "039 - Disclosure - Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)",
     "menuCat": "Details",
     "order": "40",
     "role": "http://www.alphaprotech.com/20230331/role/statement-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)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31_ConsolidationItemsAxis-OperatingSegmentsMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "apt:TotalConsolidatedAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "040 - Disclosure - Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)",
     "menuCat": "Details",
     "order": "41",
     "role": "http://www.alphaprotech.com/20230331/role/statement-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)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "apt:TotalConsolidatedAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "041 - Disclosure - Note 11 - Financial Information about Geographic Areas (Details Textual)",
     "menuCat": "Details",
     "order": "42",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
     "shortName": "Note 11 - Financial Information about Geographic Areas (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "apt:FinancialInformationAboutGeographicAreasTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31_StatementGeographicalAxis-CA",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "042 - Disclosure - Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)",
     "menuCat": "Details",
     "order": "43",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-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)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "ix:continuation",
       "apt:FinancialInformationAboutGeographicAreasTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31_ConsolidationItemsAxis-ReportableGeographicalComponentsMember",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:NoncurrentAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "043 - Disclosure - Note 13 - Leases (Details Textual)",
     "menuCat": "Details",
     "order": "44",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual",
     "shortName": "Note 13 - Leases (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "044 - Disclosure - Note 13 - Leases - Future Minimum Lease Payment (Details)",
     "menuCat": "Details",
     "order": "45",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details",
     "shortName": "Note 13 - Leases - Future Minimum Lease Payment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2022-06-07_2022-06-07_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LossContingencyDamagesSoughtValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "045 - Disclosure - Note 15 - Contingencies (Details Textual)",
     "menuCat": "Details",
     "order": "46",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual",
     "shortName": "Note 15 - Contingencies (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2022-06-07_2022-06-07_LitigationCaseAxis-LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LossContingencyDamagesSoughtValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "004 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited)",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
     "shortName": "Condensed Consolidated Statements of Comprehensive Income (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ComprehensiveIncomeNetOfTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "005 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "i_2021-12-31_StatementEquityComponentsAxis-CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "006 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "menuCat": "Statements",
     "order": "7",
     "role": "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
     "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "007 - Disclosure - Note 1 - The Company",
     "menuCat": "Notes",
     "order": "8",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-1-the-company",
     "shortName": "Note 1 - The Company",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "008 - Disclosure - Note 2 - Basis of Presentation and Revenue Recognition Policy",
     "menuCat": "Notes",
     "order": "9",
     "role": "http://www.alphaprotech.com/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
     "shortName": "Note 2 - Basis of Presentation and Revenue Recognition Policy",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "apt20230331_10q.htm",
      "contextRef": "d_2023-01-01_2023-03-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 29,
   "tag": {
    "apt_AlphaProTechEngineeredProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Alpha ProTech Engineered Products [Member]",
        "label": "Alpha Pro Tech Engineered Products [Member]"
       }
      }
     },
     "localname": "AlphaProTechEngineeredProductsMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_BuildingSupplyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Building Supply [Member]",
        "label": "Building Supply [Member]"
       }
      }
     },
     "localname": "BuildingSupplyMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "CumulativeEquityInIncomeOfUnconsolidatedAffiliate",
        "label": "apt_CumulativeEquityInIncomeOfUnconsolidatedAffiliate",
        "terseLabel": "Cumulative Equity In Income Of Unconsolidated Affiliate"
       }
      }
     },
     "localname": "CumulativeEquityInIncomeOfUnconsolidatedAffiliate",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_DepositPaidForEquipmentWriteoff": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Write-off amount of deposit paid for equipment.",
        "label": "apt_DepositPaidForEquipmentWriteoff",
        "terseLabel": "Deposit Paid for Equipment, Write-off"
       }
      }
     },
     "localname": "DepositPaidForEquipmentWriteoff",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_DisposableProtectiveApparelMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disposable Protective Apparel [Member]",
        "label": "Disposable Protective Apparel [Member]"
       }
      }
     },
     "localname": "DisposableProtectiveApparelMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ExpenseToAcquireInventory": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Purchases from our Joint venture.",
        "label": "apt_ExpenseToAcquireInventory",
        "terseLabel": "Expense To Acquire Inventory"
       }
      }
     },
     "localname": "ExpenseToAcquireInventory",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_FinancialInformationAboutGeographicAreasTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Entire disclosure for financial information about geographic areas.",
        "label": "Financial Information about Geographic Areas [Text Block]"
       }
      }
     },
     "localname": "FinancialInformationAboutGeographicAreasTextBlock",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas"
     ],
     "xbrltype": "textBlockItemType"
    },
    "apt_HarmonyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of investment.",
        "label": "Harmony [Member]"
       }
      }
     },
     "localname": "HarmonyMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_IncentivePlan2020Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the 2020 incentive plan.",
        "label": "Incentive Plan 2020 [Member]"
       }
      }
     },
     "localname": "IncentivePlan2020Member",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_InternationalMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "International [Member]",
        "label": "International Member"
       }
      }
     },
     "localname": "InternationalMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lawsuit With Defendants in Utah for Undelivered Equipment.",
        "label": "Lawsuit With Defendants in Utah for Undelivered Equipment [Member]"
       }
      }
     },
     "localname": "LawsuitWithDefendantsInUtahForUndeliveredEquipmentMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ManufacturingBuildingProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates a facility used for manufacturing building products.",
        "label": "Manufacturing Building Products [Member]"
       }
      }
     },
     "localname": "ManufacturingBuildingProductsMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates a facility used for manufacturing coated material and sewing proprietary disposable protective apparel.",
        "label": "Manufacturing Coated Material and Sewing Proprietary Disposable Protective Apparel [Member]"
       }
      }
     },
     "localname": "ManufacturingCoatedMaterialAndSewingProprietaryDisposableProtectiveApparelMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_ManufacturingOfBuildingProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates a facility used for manufacturing of building products.",
        "label": "Manufacturing Of Building Products [Member]"
       }
      }
     },
     "localname": "ManufacturingOfBuildingProductsMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_MapleIndustriesAndAssociatesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maple industries and associates [member",
        "label": "Maple Industries and Associates [Member]"
       }
      }
     },
     "localname": "MapleIndustriesAndAssociatesMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_NoteToFinancialStatementDetailsTextual": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note To Financial Statement Details Textual"
       }
      }
     },
     "localname": "NoteToFinancialStatementDetailsTextual",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_NotesToFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes To Financial Statements [Abstract]"
       }
      }
     },
     "localname": "NotesToFinancialStatementsAbstract",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_NumberOfStoresOwned": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the number of stores owned.",
        "label": "apt_NumberOfStoresOwned",
        "terseLabel": "Number Of Stores Owned"
       }
      }
     },
     "localname": "NumberOfStoresOwned",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "pureItemType"
    },
    "apt_NumberOfStoresRented": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the number of stores rented.",
        "label": "apt_NumberOfStoresRented",
        "terseLabel": "Number Of Stores Rented"
       }
      }
     },
     "localname": "NumberOfStoresRented",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "pureItemType"
    },
    "apt_OperatingLeaseExpenseNetOfAccretion": {
     "auth_ref": [],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the amount of operating lease expense, net of accretion during the period.",
        "label": "Operating lease expense, net of accretion"
       }
      }
     },
     "localname": "OperatingLeaseExpenseNetOfAccretion",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_ProceedsFromPaymentsForStockOptionsExercised": {
     "auth_ref": [],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from or (outflow of) cash for stock options exercised during the period.",
        "label": "Proceeds from exercise of stock options"
       }
      }
     },
     "localname": "ProceedsFromPaymentsForStockOptionsExercised",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_SewingProprietaryDisposableProtectiveApparelMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates a facility used for sewing proprietary disposable protective apparel.",
        "label": "Sewing Proprietary Disposable Protective Apparel [Member]"
       }
      }
     },
     "localname": "SewingProprietaryDisposableProtectiveApparelMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_The2004PlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information regarding the 2004 plan.",
        "label": "The2004 Plan Member"
       }
      }
     },
     "localname": "The2004PlanMember",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "apt_TotalConsolidatedAssets": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total consolidated assets",
        "label": "Consolidated assets"
       }
      }
     },
     "localname": "TotalConsolidatedAssets",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Activity of Business Segments - Consolidated Net Property and Equipment, Goodwill and Intangible Assets (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Activity of Business Segments - Consolidated Net Sales (Details)"
       }
      }
     },
     "localname": "statement-statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-10-activity-of-business-segments-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 10 - Activity of Business Segments"
       }
      }
     },
     "localname": "statement-statement-note-10-activity-of-business-segments-tables",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Financial Information about Geographic Areas - Consolidated Net Sales and Long-lived Asset Information by Geographic Area (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-11-financial-information-about-geographic-areas-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Financial Information about Geographic Areas"
       }
      }
     },
     "localname": "statement-statement-note-11-financial-information-about-geographic-areas-tables",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-13-leases-future-minimum-lease-payment-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 13 - Leases - Future Minimum Lease Payment (Details)"
       }
      }
     },
     "localname": "statement-statement-note-13-leases-future-minimum-lease-payment-details",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-13-leases-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 13 - Leases"
       }
      }
     },
     "localname": "statement-statement-note-13-leases-tables",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-3-stockbased-compensation-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 3 - Stock-based Compensation"
       }
      }
     },
     "localname": "statement-statement-note-3-stockbased-compensation-tables",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-3-stockedbased-compensation-stock-option-activity-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 3 - Stocked-based Compensation - Stock Option Activity (Details)"
       }
      }
     },
     "localname": "statement-statement-note-3-stockedbased-compensation-stock-option-activity-details",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-5-inventories-inventories-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 5 - Inventories - Inventories (Details)"
       }
      }
     },
     "localname": "statement-statement-note-5-inventories-inventories-details",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-5-inventories-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 5 - Inventories"
       }
      }
     },
     "localname": "statement-statement-note-5-inventories-tables",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-7-accrued-liabilities-accrued-liabilities-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 7 - Accrued Liabilities - Accrued Liabilities (Details)"
       }
      }
     },
     "localname": "statement-statement-note-7-accrued-liabilities-accrued-liabilities-details",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-7-accrued-liabilities-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 7 - Accrued Liabilities"
       }
      }
     },
     "localname": "statement-statement-note-7-accrued-liabilities-tables",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "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": {
     "auth_ref": [],
     "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)"
       }
      }
     },
     "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",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 8 - Basic and Diluted Earnings Per Common Share"
       }
      }
     },
     "localname": "statement-statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "apt_statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 9 - Activity of Business Segments - Reconciliation of Total Segment Income to Total Consolidated Net Income (Details)"
       }
      }
     },
     "localname": "statement-statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details",
     "nsuri": "http://www.alphaprotech.com/20230331",
     "xbrltype": "stringItemType"
    },
    "country_CA": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CANADA"
       }
      }
     },
     "localname": "CA",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "country_IN": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "INDIA"
       }
      }
     },
     "localname": "IN",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "dei_CityAreaCode",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentInformationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Document Information [Line Items]"
       }
      }
     },
     "localname": "DocumentInformationLineItems",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_DocumentInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package.",
        "label": "Document Information [Table]"
       }
      }
     },
     "localname": "DocumentInformationTable",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "xbrltype": "stringItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "dei_DocumentPeriodEndDate",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r502"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "dei_DocumentQuarterlyReport",
        "terseLabel": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r503"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "dei_DocumentTransitionReport",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "dei_DocumentType",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCountry": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ISO 3166-1 alpha-2 country code.",
        "label": "Entity Address, Country"
       }
      }
     },
     "localname": "EntityAddressCountry",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "countryCodeItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding (in shares)"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "dei_EntityCurrentReportingStatus",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Entity [Domain]"
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information",
      "http://www.alphaprotech.com/20230331/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "dei_EntityEmergingGrowthCompany",
        "terseLabel": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "dei_EntityFileNumber",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "dei_EntityFilerCategory",
        "terseLabel": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r504"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "dei_EntityInteractiveDataCurrent",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "dei_EntityRegistrantName",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "dei_EntityShellCompany",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "dei_EntitySmallBusiness",
        "terseLabel": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information",
      "http://www.alphaprotech.com/20230331/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "dei_LocalPhoneNumber",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r499"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r501"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-document-and-entity-information"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_ConsolidationItemsAxis": {
     "auth_ref": [
      "r118",
      "r160",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r177",
      "r181",
      "r221",
      "r222",
      "r223",
      "r224",
      "r226",
      "r227",
      "r229",
      "r231",
      "r232",
      "r535",
      "r536"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Axis]"
       }
      }
     },
     "localname": "ConsolidationItemsAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidationItemsDomain": {
     "auth_ref": [
      "r118",
      "r160",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r177",
      "r181",
      "r221",
      "r222",
      "r223",
      "r224",
      "r226",
      "r227",
      "r229",
      "r231",
      "r232",
      "r535",
      "r536"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Domain]"
       }
      }
     },
     "localname": "ConsolidationItemsDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "auth_ref": [
      "r192",
      "r193",
      "r195"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Domain]"
       }
      }
     },
     "localname": "EquityMethodInvesteeNameDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_LitigationCaseAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Case [Axis]"
       }
      }
     },
     "localname": "LitigationCaseAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_LitigationCaseTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Litigation Case [Domain]"
       }
      }
     },
     "localname": "LitigationCaseTypeDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r183",
      "r341",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r470",
      "r483",
      "r488",
      "r507",
      "r533",
      "r534",
      "r537",
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r183",
      "r341",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r470",
      "r483",
      "r488",
      "r507",
      "r533",
      "r534",
      "r537",
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ReportableGeographicalComponentsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reportable Geographical Components [Member]"
       }
      }
     },
     "localname": "ReportableGeographicalComponentsMember",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "auth_ref": [
      "r192",
      "r193",
      "r195"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Axis]"
       }
      }
     },
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r185",
      "r186",
      "r398",
      "r399",
      "r400",
      "r455",
      "r456",
      "r457",
      "r458",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r471",
      "r484",
      "r491",
      "r537",
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r185",
      "r186",
      "r398",
      "r399",
      "r400",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r471",
      "r484",
      "r491",
      "r537",
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis": {
     "auth_ref": [
      "r23"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by legal entity of counterparty. A counterparty is the other party that participates in a financial transaction.",
        "label": "Legal Entity of Counterparty, Type [Axis]"
       }
      }
     },
     "localname": "AccountsNotesLoansAndFinancingReceivablesByLegalEntityOfCounterpartyTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r16"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.",
        "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r15",
      "r487"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r188",
      "r189"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts receivable, net of allowance for doubtful accounts"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedBonusesCurrent": {
     "auth_ref": [
      "r18"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Commissions and bonuses payable and general accrued liabilities"
       }
      }
     },
     "localname": "AccruedBonusesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r18"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of 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).",
        "label": "Accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedSalariesCurrent": {
     "auth_ref": [
      "r18",
      "r475"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "Payroll expenses and taxes payable"
       }
      }
     },
     "localname": "AccruedSalariesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r24",
      "r25",
      "r53",
      "r95",
      "r355",
      "r386",
      "r389"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.",
        "label": "Accumulated other comprehensive loss",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss), Net of Tax"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r1",
      "r8",
      "r25",
      "r298",
      "r301",
      "r329",
      "r382",
      "r383",
      "r510",
      "r511",
      "r512",
      "r518",
      "r519",
      "r520"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r272",
      "r273",
      "r274",
      "r396",
      "r518",
      "r519",
      "r520",
      "r564",
      "r572"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional Paid-in Capital [Member]"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r40",
      "r41",
      "r238"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "Stock-based compensation expense"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income to net cash used in operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r267",
      "r275"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "us-gaap_AllocatedShareBasedCompensationExpense",
        "terseLabel": "Share-Based Payment Arrangement, Expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r96",
      "r190",
      "r202"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent",
        "terseLabel": "Accounts Receivable, Allowance for Credit Loss, Current"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AreaOfRealEstateProperty": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area of a real estate property.",
        "label": "us-gaap_AreaOfRealEstateProperty",
        "terseLabel": "Area of Real Estate Property (Square Foot)"
       }
      }
     },
     "localname": "AreaOfRealEstateProperty",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "areaItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r74",
      "r94",
      "r114",
      "r158",
      "r173",
      "r179",
      "r196",
      "r221",
      "r222",
      "r224",
      "r225",
      "r226",
      "r228",
      "r230",
      "r232",
      "r233",
      "r293",
      "r295",
      "r311",
      "r351",
      "r421",
      "r487",
      "r498",
      "r535",
      "r536",
      "r568"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "us-gaap_Assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r90",
      "r99",
      "r114",
      "r196",
      "r221",
      "r222",
      "r224",
      "r225",
      "r226",
      "r228",
      "r230",
      "r232",
      "r233",
      "r293",
      "r295",
      "r311",
      "r487",
      "r535",
      "r536",
      "r568"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "us-gaap_AssetsCurrent",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r28",
      "r92",
      "r472"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r28",
      "r64",
      "r112"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
        "periodEndLabel": "Cash and cash equivalents, end of the period",
        "periodStartLabel": "Cash and cash equivalents, beginning of the period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r0",
      "r64"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
        "totalLabel": "Decrease in cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r20",
      "r42",
      "r353",
      "r408"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r71",
      "r219",
      "r220",
      "r460",
      "r529"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate number of common shares reserved for future issuance.",
        "label": "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance",
        "terseLabel": "Common Stock, Capital Shares Reserved for Future Issuance"
       }
      }
     },
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r489",
      "r490",
      "r491",
      "r493",
      "r494",
      "r495",
      "r496",
      "r518",
      "r519",
      "r564",
      "r571",
      "r572"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r44"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "us-gaap_CommonStockParOrStatedValuePerShare",
        "terseLabel": "Common Stock, Par or Stated Value Per Share (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r44",
      "r409"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "us-gaap_CommonStockSharesAuthorized",
        "terseLabel": "Common Stock, Shares Authorized (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r9",
      "r44",
      "r409",
      "r427",
      "r572",
      "r573"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "us-gaap_CommonStockSharesOutstanding",
        "periodEndLabel": "Balance as of March 31, 2023 (in shares)",
        "periodStartLabel": "Balance as of December 31, 2022 (in shares)",
        "terseLabel": "Common Stock, Shares, Outstanding, Ending Balance (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r44",
      "r354",
      "r487"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common stock, $.01 par value: 50,000,000 shares authorized; 12,135,556 and 12,226,306 shares outstanding as of March 31, 2023 and December 31, 2022, respectively"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r26",
      "r101",
      "r103",
      "r108",
      "r348",
      "r362"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "us-gaap_ComprehensiveIncomeNetOfTax",
        "totalLabel": "Comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNoteTextBlock": {
     "auth_ref": [
      "r52",
      "r107",
      "r347",
      "r361"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Comprehensive Income (Loss) Note [Text Block]"
       }
      }
     },
     "localname": "ComprehensiveIncomeNoteTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CorporateNonSegmentMember": {
     "auth_ref": [
      "r12",
      "r172",
      "r173",
      "r174",
      "r175",
      "r181",
      "r523"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Corporate, Non-Segment [Member]"
       }
      }
     },
     "localname": "CorporateNonSegmentMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r58",
      "r341"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of goods sold, excluding depreciation and amortization"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r277",
      "r278",
      "r352"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.",
        "label": "Deferred income tax liabilities, net"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r5",
      "r163"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Depreciation and amortization",
        "terseLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r237",
      "r240",
      "r268",
      "r269",
      "r271",
      "r485"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement [Text Block]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_DisclosureTextBlockAbstract",
        "terseLabel": "Notes to Financial Statements"
       }
      }
     },
     "localname": "DisclosureTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230331/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230331/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings per common share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/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"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r109",
      "r128",
      "r129",
      "r130",
      "r131",
      "r132",
      "r139",
      "r141",
      "r146",
      "r147",
      "r148",
      "r152",
      "r306",
      "r307",
      "r349",
      "r363",
      "r479"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Basic earnings per common share (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/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"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r109",
      "r128",
      "r129",
      "r130",
      "r131",
      "r132",
      "r141",
      "r146",
      "r147",
      "r148",
      "r152",
      "r306",
      "r307",
      "r349",
      "r363",
      "r479"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Diluted earnings per common share (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/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"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r138",
      "r149",
      "r150",
      "r151"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r270"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
        "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
        "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Share-Based Payment Arrangement, Option [Member]"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r9",
      "r86",
      "r104",
      "r105",
      "r106",
      "r119",
      "r120",
      "r121",
      "r125",
      "r133",
      "r135",
      "r153",
      "r198",
      "r201",
      "r234",
      "r272",
      "r273",
      "r274",
      "r283",
      "r284",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r303",
      "r305",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r329",
      "r382",
      "r383",
      "r384",
      "r396",
      "r449"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityMethodInvestmentAggregateCost": {
     "auth_ref": [
      "r14"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This element represents the aggregate cost of investments accounted for under the equity method of accounting.",
        "label": "us-gaap_EquityMethodInvestmentAggregateCost",
        "terseLabel": "Equity Method Investment, Aggregate Cost"
       }
      }
     },
     "localname": "EquityMethodInvestmentAggregateCost",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentDividendsOrDistributions": {
     "auth_ref": [
      "r3",
      "r5",
      "r54",
      "r359"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_EquityMethodInvestmentDividendsOrDistributions",
        "terseLabel": "Proceeds from Equity Method Investment, Distribution"
       }
      }
     },
     "localname": "EquityMethodInvestmentDividendsOrDistributions",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment": {
     "auth_ref": [
      "r524"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_EquityMethodInvestmentOtherThanTemporaryImpairment",
        "terseLabel": "Equity Method Investment, Other than Temporary Impairment"
       }
      }
     },
     "localname": "EquityMethodInvestmentOtherThanTemporaryImpairment",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "auth_ref": [
      "r192"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.",
        "label": "us-gaap_EquityMethodInvestmentOwnershipPercentage",
        "terseLabel": "Equity Method Investment, Ownership Percentage"
       }
      }
     },
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EquityMethodInvestments": {
     "auth_ref": [
      "r168",
      "r191",
      "r508",
      "r525"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_EquityMethodInvestments",
        "terseLabel": "Equity Method Investments"
       }
      }
     },
     "localname": "EquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentsDisclosureTextBlock": {
     "auth_ref": [
      "r85",
      "r194",
      "r197",
      "r505"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Equity Method Investments and Joint Ventures Disclosure [Text Block]"
       }
      }
     },
     "localname": "EquityMethodInvestmentsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseLiability": {
     "auth_ref": [
      "r325",
      "r328"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.",
        "label": "us-gaap_FinanceLeaseLiability",
        "terseLabel": "Finance Lease, Liability, Total"
       }
      }
     },
     "localname": "FinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r70",
      "r342"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Definite-lived intangible assets, net"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r93",
      "r206",
      "r346",
      "r482",
      "r487",
      "r527",
      "r528"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r57",
      "r114",
      "r158",
      "r172",
      "r178",
      "r181",
      "r196",
      "r221",
      "r222",
      "r224",
      "r225",
      "r226",
      "r228",
      "r230",
      "r232",
      "r233",
      "r311",
      "r481",
      "r535"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "us-gaap_GrossProfit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossAttributableToParent": {
     "auth_ref": [
      "r59",
      "r106"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_IncomeLossAttributableToParent",
        "totalLabel": "Income before provision for income taxes"
       }
      }
     },
     "localname": "IncomeLossAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromEquityMethodInvestments": {
     "auth_ref": [
      "r5",
      "r54",
      "r76",
      "r165",
      "r191",
      "r359"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) for proportionate share of equity method investee's income (loss).",
        "label": "Equity in income of unconsolidated affiliate",
        "negatedTerseLabel": "Equity in income of unconsolidated affiliate",
        "terseLabel": "Income (Loss) from Equity Method Investments"
       }
      }
     },
     "localname": "IncomeLossFromEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r115",
      "r276",
      "r280",
      "r281",
      "r282",
      "r288",
      "r290",
      "r291",
      "r292",
      "r392"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.",
        "label": "Income Tax Disclosure [Text Block]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-14-income-taxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r78",
      "r82",
      "r134",
      "r135",
      "r166",
      "r279",
      "r289",
      "r364"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Provision for income taxes",
        "terseLabel": "Provision for income taxes"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
        "terseLabel": "Accounts payable and accrued liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "us-gaap_IncreaseDecreaseInAccountsReceivable",
        "negatedTerseLabel": "Accounts receivable, net"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDueFromRelatedParties": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_IncreaseDecreaseInDueFromRelatedParties",
        "negatedLabel": "Accounts receivable, related party"
       }
      }
     },
     "localname": "IncreaseDecreaseInDueFromRelatedParties",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "us-gaap_IncreaseDecreaseInInventories",
        "negatedTerseLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in operating assets and liabilities:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": {
     "auth_ref": [
      "r506",
      "r514"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in obligation for operating lease.",
        "label": "us-gaap_IncreaseDecreaseInOperatingLeaseLiability",
        "terseLabel": "Lease liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_IncreaseDecreaseInPrepaidExpense",
        "negatedLabel": "Prepaid expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r142",
      "r143",
      "r144",
      "r148",
      "r239"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/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": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Add: dilutive effect of common stock options (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/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"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_InterestIncomeExpenseNonoperatingNet": {
     "auth_ref": [],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net amount of nonoperating interest income (expense).",
        "label": "Interest income, net"
       }
      }
     },
     "localname": "InterestIncomeExpenseNonoperatingNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r203"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.",
        "label": "Inventory Disclosure [Text Block]"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r69",
      "r476"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.",
        "label": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r97",
      "r473",
      "r487"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventories",
        "totalLabel": "Inventory, Net"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r69",
      "r478"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.",
        "label": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterialsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "auth_ref": [
      "r69",
      "r477"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details": {
       "order": 0.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Work in process"
       }
      }
     },
     "localname": "InventoryWorkInProcessNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures": {
     "auth_ref": [
      "r509"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of investment in equity method investee and investment in and advance to affiliate.",
        "label": "Equity investment in unconsolidated affiliate"
       }
      }
     },
     "localname": "InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LegalEntityTypeOfCounterpartyDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Nature of the other party participating in a financial transaction.",
        "label": "Legal Entity Type of Counterparty [Domain]"
       }
      }
     },
     "localname": "LegalEntityTypeOfCounterpartyDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r567"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r328"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
        "totalLabel": "Total future minimum lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r328"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease 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).",
        "label": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r328"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease 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).",
        "label": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "auth_ref": [
      "r567"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details": {
       "order": 0.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Remaining nine months of 2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r328"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Less imputed interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r323"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "Lessee, Operating Leases [Text Block]"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r17",
      "r114",
      "r196",
      "r221",
      "r222",
      "r224",
      "r225",
      "r226",
      "r228",
      "r230",
      "r232",
      "r233",
      "r294",
      "r295",
      "r296",
      "r311",
      "r407",
      "r480",
      "r498",
      "r535",
      "r568",
      "r569"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.",
        "label": "us-gaap_Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r48",
      "r75",
      "r357",
      "r487",
      "r515",
      "r526",
      "r565"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "us-gaap_LiabilitiesAndStockholdersEquity",
        "totalLabel": "Total liabilities and shareholders' equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r19",
      "r91",
      "r114",
      "r196",
      "r221",
      "r222",
      "r224",
      "r225",
      "r226",
      "r228",
      "r230",
      "r232",
      "r233",
      "r294",
      "r295",
      "r296",
      "r311",
      "r487",
      "r535",
      "r568",
      "r569"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "us-gaap_LiabilitiesCurrent",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LossContingencyDamagesSoughtValue": {
     "auth_ref": [
      "r530",
      "r531",
      "r532"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The value (monetary amount) of the award the plaintiff seeks in the legal matter.",
        "label": "us-gaap_LossContingencyDamagesSoughtValue",
        "terseLabel": "Loss Contingency, Damages Sought, Value"
       }
      }
     },
     "localname": "LossContingencyDamagesSoughtValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NatureOfOperations": {
     "auth_ref": [
      "r79",
      "r84"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.",
        "label": "Nature of Operations [Text Block]"
       }
      }
     },
     "localname": "NatureOfOperations",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-1-the-company"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r111"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
        "totalLabel": "Net cash used in financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows From Financing Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r111"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
        "totalLabel": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows From Investing Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r64",
      "r65",
      "r66"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
        "totalLabel": "Net cash used in operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flows From Operating Activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r55",
      "r66",
      "r77",
      "r89",
      "r100",
      "r102",
      "r106",
      "r114",
      "r124",
      "r128",
      "r129",
      "r130",
      "r131",
      "r134",
      "r135",
      "r145",
      "r158",
      "r172",
      "r178",
      "r181",
      "r196",
      "r221",
      "r222",
      "r224",
      "r225",
      "r226",
      "r228",
      "r230",
      "r232",
      "r233",
      "r307",
      "r311",
      "r360",
      "r429",
      "r447",
      "r448",
      "r481",
      "r497",
      "r535"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net income",
        "terseLabel": "Net income loss",
        "totalLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r80",
      "r81",
      "r83",
      "r87",
      "r122",
      "r123",
      "r126",
      "r127",
      "r136",
      "r137",
      "r199",
      "r200",
      "r285",
      "r286",
      "r287",
      "r302",
      "r304",
      "r308",
      "r309",
      "r310",
      "r312",
      "r313",
      "r314",
      "r321",
      "r322",
      "r330",
      "r343",
      "r344",
      "r345",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-4-recent-accounting-pronouncements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncurrentAssets": {
     "auth_ref": [
      "r186"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_NoncurrentAssets",
        "verboseLabel": "long-lived assets"
       }
      }
     },
     "localname": "NoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r61"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_IncomeLossAttributableToParent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "us-gaap_NonoperatingIncomeExpense",
        "totalLabel": "Total other income"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income:"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NonrelatedPartyMember": {
     "auth_ref": [
      "r516",
      "r517"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Party not related to reporting entity.",
        "label": "Nonrelated Party [Member]"
       }
      }
     },
     "localname": "NonrelatedPartyMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NumberOfOperatingSegments": {
     "auth_ref": [
      "r522"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_NumberOfOperatingSegments",
        "terseLabel": "Number of Operating Segments"
       }
      }
     },
     "localname": "NumberOfOperatingSegments",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-details-textual"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_NumberOfStores": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the number of stores.",
        "label": "us-gaap_NumberOfStores",
        "terseLabel": "Number of Stores"
       }
      }
     },
     "localname": "NumberOfStores",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.",
        "label": "us-gaap_OperatingExpenses",
        "totalLabel": "Total operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses:"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r158",
      "r172",
      "r178",
      "r181",
      "r481"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossAttributableToParent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "us-gaap_OperatingIncomeLoss",
        "totalLabel": "Income from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r566"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease expense. Excludes sublease income.",
        "label": "us-gaap_OperatingLeaseExpense",
        "terseLabel": "Operating Lease, Expense"
       }
      }
     },
     "localname": "OperatingLeaseExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r325"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Total lease liabilities",
        "terseLabel": "Operating Lease, Liability, Total"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r325"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r325"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Lease liabilities, net of current portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r324"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Right-of-use assets",
        "terseLabel": "Operating Lease, Right-of-Use Asset"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r327",
      "r486"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent",
        "terseLabel": "Operating Lease, Weighted Average Discount Rate, Percent"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r326",
      "r486"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1",
        "terseLabel": "Operating Lease, Weighted Average Remaining Lease Term (Year)"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingSegmentsMember": {
     "auth_ref": [
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r181"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Operating Segments [Member]"
       }
      }
     },
     "localname": "OperatingSegmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r2",
      "r7",
      "r73"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.",
        "label": "Other comprehensive income (loss)- foreign currency translation gain (loss)"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r27"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to reacquire common stock during the period.",
        "label": "us-gaap_PaymentsForRepurchaseOfCommonStock",
        "negatedLabel": "Repurchase of common stock"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment",
        "negatedTerseLabel": "Purchases of property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [
      "r538",
      "r539",
      "r540",
      "r541",
      "r542",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "auth_ref": [
      "r98",
      "r204",
      "r205",
      "r474"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.",
        "label": "Prepaid expenses"
       }
      }
     },
     "localname": "PrepaidExpenseCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital": {
     "auth_ref": [
      "r110",
      "r513"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital",
        "terseLabel": "Proceeds from Equity Method Investment, Distribution, Return of Capital"
       }
      }
     },
     "localname": "ProceedsFromEquityMethodInvestmentDividendsOrDistributionsReturnOfCapital",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfProductiveAssets": {
     "auth_ref": [
      "r62"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the sale of property, plant and equipment (capital expenditures), software, and other intangible assets.",
        "label": "us-gaap_ProceedsFromSaleOfProductiveAssets",
        "terseLabel": "Proceeds from Sale of Productive Assets, Total"
       }
      }
     },
     "localname": "ProceedsFromSaleOfProductiveAssets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r6",
      "r350",
      "r358",
      "r487"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock": {
     "auth_ref": [
      "r34",
      "r35"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total assets from reportable segments to the entity's consolidated assets.",
        "label": "Reconciliation of Assets from Segment to Consolidated [Table Text Block]"
       }
      }
     },
     "localname": "ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": {
     "auth_ref": [
      "r33",
      "r35"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues.",
        "label": "Reconciliation of Revenue from Segments to Consolidated [Table Text Block]"
       }
      }
     },
     "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RelatedAndNonrelatedPartyStatusAxis": {
     "auth_ref": [
      "r116",
      "r117",
      "r334",
      "r335",
      "r336",
      "r337",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r426",
      "r428",
      "r492"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by related and nonrelated party status.",
        "label": "Related and Nonrelated Party Status [Axis]"
       }
      }
     },
     "localname": "RelatedAndNonrelatedPartyStatusAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedAndNonrelatedPartyStatusDomain": {
     "auth_ref": [
      "r116",
      "r117",
      "r334",
      "r335",
      "r336",
      "r337",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r426",
      "r428",
      "r492"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Related and nonrelated party status.",
        "label": "Related and Nonrelated Party Status [Domain]"
       }
      }
     },
     "localname": "RelatedAndNonrelatedPartyStatusDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyMember": {
     "auth_ref": [
      "r116",
      "r117",
      "r334",
      "r335",
      "r336",
      "r337",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r426",
      "r428",
      "r454"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Related Party [Member]"
       }
      }
     },
     "localname": "RelatedPartyMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "auth_ref": [
      "r331",
      "r332",
      "r333",
      "r335",
      "r338",
      "r393",
      "r394",
      "r395",
      "r432",
      "r433",
      "r434",
      "r452",
      "r453"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.",
        "label": "Related Party Transactions Disclosure [Text Block]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-12-related-party-transactions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r29"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Restricted Stock [Member]"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestructuringPlanAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by individual restructuring plan.",
        "label": "Restructuring Plan [Axis]"
       }
      }
     },
     "localname": "RestructuringPlanAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringPlanDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the individual restructuring plans.",
        "label": "Restructuring Plan [Domain]"
       }
      }
     },
     "localname": "RestructuringPlanDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r45",
      "r72",
      "r356",
      "r385",
      "r389",
      "r391",
      "r410",
      "r487"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated undistributed earnings (deficit).",
        "label": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r86",
      "r119",
      "r120",
      "r121",
      "r125",
      "r133",
      "r135",
      "r198",
      "r201",
      "r272",
      "r273",
      "r274",
      "r283",
      "r284",
      "r297",
      "r299",
      "r300",
      "r303",
      "r305",
      "r382",
      "r384",
      "r396",
      "r572"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated undistributed earnings (deficit).",
        "label": "Retained Earnings [Member]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "auth_ref": [
      "r159",
      "r160",
      "r171",
      "r176",
      "r177",
      "r183",
      "r185",
      "r187",
      "r235",
      "r236",
      "r341"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Net sales",
        "terseLabel": "Revenue from Contract with Customer, Including Assessed Tax",
        "verboseLabel": "Revenues"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of accrued liabilities.",
        "label": "Schedule of Accrued Liabilities [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r521"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r13",
      "r49",
      "r50",
      "r51"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.",
        "label": "Schedule of Inventory, Current [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock": {
     "auth_ref": [
      "r36",
      "r56"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r30",
      "r31",
      "r32",
      "r37"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r10",
      "r11",
      "r39"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.",
        "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r155",
      "r158",
      "r159",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r169",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r181",
      "r187",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r217",
      "r218",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r482",
      "r507",
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r154",
      "r155",
      "r156",
      "r157",
      "r158",
      "r170",
      "r175",
      "r179",
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r187"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Segment Reporting Disclosure [Text Block]"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r60"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling, general and administrative"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Stock-based compensation"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r264"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r38"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r246"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.",
        "label": "Options exercisable, Options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r246"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "Options exercisable, Weighted average price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "auth_ref": [
      "r544"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
        "negatedLabel": "Canceled/expired/forfeited, Options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r544"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price of options that were either forfeited or expired.",
        "label": "Canceled/expired/forfeited, Weighted average price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [
      "r248"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Granted, Options (in shares)",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r244",
      "r245"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
        "periodEndLabel": "Options, Options (in shares)",
        "periodStartLabel": "Options outstanding, Options (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r244",
      "r245"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
        "periodEndLabel": "Options outstanding, Weighted average price (in dollars per share)",
        "periodStartLabel": "Options outstanding, Weighted average price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r249"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Exercised, Weighted average price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r248"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Granted, Weighted average price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r67",
      "r113"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r88",
      "r155",
      "r158",
      "r159",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r169",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r181",
      "r187",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r482",
      "r507",
      "r570"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r9",
      "r22",
      "r86",
      "r104",
      "r105",
      "r106",
      "r119",
      "r120",
      "r121",
      "r125",
      "r133",
      "r135",
      "r153",
      "r198",
      "r201",
      "r234",
      "r272",
      "r273",
      "r274",
      "r283",
      "r284",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r303",
      "r305",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r329",
      "r382",
      "r383",
      "r384",
      "r396",
      "r449"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [
      "r119",
      "r120",
      "r121",
      "r153",
      "r341",
      "r390",
      "r397",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r409",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r428",
      "r430",
      "r431",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r449",
      "r492"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r119",
      "r120",
      "r121",
      "r153",
      "r341",
      "r390",
      "r397",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r409",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r428",
      "r430",
      "r431",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r449",
      "r492"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-1-the-company",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-property-and-equipment-goodwill-and-intangible-assets-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-consolidated-net-sales-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-consolidated-net-sales-and-longlived-asset-information-by-geographic-area-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-12-related-party-transactions",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-future-minimum-lease-payment-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-14-income-taxes",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies",
      "http://www.alphaprotech.com/20230331/role/statement-note-15-contingencies-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-16-subsequent-events",
      "http://www.alphaprotech.com/20230331/role/statement-note-2-basis-of-presentation-and-revenue-recognition-policy",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-4-recent-accounting-pronouncements",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-inventories-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate",
      "http://www.alphaprotech.com/20230331/role/statement-note-6-equity-investment-in-unconsolidated-affiliate-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-accrued-liabilities-details",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share",
      "http://www.alphaprotech.com/20230331/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/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-accumulated-other-comprehensive-loss-details-textual",
      "http://www.alphaprotech.com/20230331/role/statement-note-9-activity-of-business-segments-reconciliation-of-total-segment-income-to-total-consolidated-net-income-details"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r9",
      "r43",
      "r44",
      "r72",
      "r249"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Options exercised (in shares)",
        "negatedLabel": "Exercised, Options (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockedbased-compensation-stock-option-activity-details"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r9",
      "r22",
      "r72"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued as a result of the exercise of stock options.",
        "label": "Options exercised"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": {
     "auth_ref": [
      "r9",
      "r43",
      "r44",
      "r72"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares that have been repurchased and retired during the period.",
        "label": "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares",
        "negatedLabel": "Common stock repurchased and retired (in shares)"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodShares",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": {
     "auth_ref": [
      "r9",
      "r43",
      "r44",
      "r72"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "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).",
        "label": "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue",
        "negatedLabel": "Common stock repurchased and retired"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r44",
      "r46",
      "r47",
      "r68",
      "r411",
      "r427",
      "r450",
      "r451",
      "r487",
      "r498",
      "r515",
      "r526",
      "r565",
      "r572"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.",
        "label": "us-gaap_StockholdersEquity",
        "periodEndLabel": "Balance as of March 31, 2023",
        "periodStartLabel": "Balance as of December 31, 2022",
        "totalLabel": "Total shareholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders' equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r339",
      "r340"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Subsequent Events [Text Block]"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-16-subsequent-events"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_TableTextBlock",
        "terseLabel": "Notes Tables"
       }
      }
     },
     "localname": "TableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-note-10-activity-of-business-segments-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-11-financial-information-about-geographic-areas-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-13-leases-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-3-stockbased-compensation-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-5-inventories-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-7-accrued-liabilities-tables",
      "http://www.alphaprotech.com/20230331/role/statement-note-8-basic-and-diluted-earnings-per-common-share-tables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r140",
      "r148"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/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": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.",
        "label": "Diluted weighted average common shares outstanding (in shares)",
        "totalLabel": "Diluted weighted average common shares outstanding (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/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"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r139",
      "r148"
     ],
     "calculation": {
      "http://www.alphaprotech.com/20230331/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": {
       "order": 0.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Basic weighted average common shares outstanding (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/role/statement-condensed-consolidated-statements-of-income-unaudited",
      "http://www.alphaprotech.com/20230331/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"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares (denominator):"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://www.alphaprotech.com/20230331/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"
     ],
     "xbrltype": "stringItemType"
    }
   },
   "unitCount": 7
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(21))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-21D",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org//260/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.12)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "https://asc.fasb.org//280/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a),20,24)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481664/323-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-20",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org//330/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "340",
   "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3,4)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org//718/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(l)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org//740/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-21D",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(iii)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(iv)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(i)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(i)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org//842-20/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "848",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "850",
   "URI": "https://asc.fasb.org//850/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "850",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "850",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "https://asc.fasb.org//855/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(1)",
   "Topic": "926",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(2)",
   "Topic": "926",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(3)",
   "Topic": "926",
   "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(10))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column A))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column B))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column C))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column D))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column E))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column F))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column G))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column H))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column I))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column J))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-16(Column K))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.6-03(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(b)(2)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(a)(2)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(14))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(15))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(17))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(19))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(8))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-05(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-05(4))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Subparagraph": "(b)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(2)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(2)(e))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(2)(g)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(9))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(e)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Subparagraph": "(d)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-8",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(b)(1)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(a)(1)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Subparagraph": "(d)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "830",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "830",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r499": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r501": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r502": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r503": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r504": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "740",
   "Subparagraph": "(f)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481543/323-740-50-2",
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(10))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "220",
   "URI": "https://asc.fasb.org//220/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481664/323-10-45-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org//450/tableOfContent",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(12))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r559": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r560": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r561": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r562": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.20)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org//235/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Topic": "330",
   "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "https://asc.fasb.org//440/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(13)(f))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(1)",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(2)",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "250",
   "URI": "https://asc.fasb.org//250/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "https://asc.fasb.org//275/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "323",
   "URI": "https://asc.fasb.org//323/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "105",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(15))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(7))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>65
<FILENAME>0001437749-23-013539-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001437749-23-013539-xbrl.zip
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
MR1#BX[;=X)SO6*LG%PO!OCG? PB!3C4W7T'9<5]&XAJ#2"'J4S*D,5449"6
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
M%GG;W1F4.<9Q_I$-@+]0>+NHP/&Z86V%*^P_!.Z_>@*^-E0]$LA.X&)\ /=
M#4/65N9 >";/'DKUTNX$B5H"012]A:@1.']]J&(>;%*M^?R"\">]U?I8W1:N
ME$_[#**9)>E@NKF#L\2*74Y%1I8(^XR+%8EYV?"\P/@F6F.EW)A] !">[H[=
M9\%RBO+9)4XUG/@8,IC8<\WW]=0'DI6YX=54>]M^UU*'??K(@DWR7!Q:N!YZ
ME-1K9Y#XW1)GF$8IBL9U?:5@_NG551='OQE7D38J,U34\]@CF[\5UY)V("%<
M*D-R]R?)W0PO>9RBY45=1XCXWXO/Q7RE^0SV]FC57;,M92FHGS.T"H^,NA'
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
M]WGWIAT/3\=5 3N%9NML"]1*K7WZTBBMQ"':8*!1 %;RT4.T$V0T"D<KL5M
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
M+6T5+L2!H3TR7L6<8Q/%&!KHT X>^#5Y?YR 1?&#.>(_L+^W'),AIZ37ZK[
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
M8G6R7_ 48+8;,2H\>)3]]4VK:6'0TG*5=?3HH3"')"M#?3EA0UO"X1!BPB2
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
M=9@^HVUUA :CD6AC:,]%>^Y;M.=BB#+:M[NS;[\DE6,' (.S[=>))O1I[$X
M\$0!&>G&C@8&E(["*W1'^2V;CE_HP-6"ZS%N)N/$0,ZR3T$BV1MM&VAK:L:U
M<PDFSQL(CD4'0)=FH_*UT7,UMLYC<ALG4AJ-]:BR[-"YS0MIMFFI-')7EO5"
M;A/BFM)>R'X5+Y;9Q?R[H,7R#^K!BSI>].,/JH2BT4QNM61!CV-1$,PKN8I=
M4A[*A0S4-7,S/O;VBJK5</?C#>6K@R:]K6@&0Z+1;(\AT6A"'PFU]]02-@9J
M[VW IY7NT=](&0D^6NVR/PNAM\B F$Y_9D-O<0$Q*3 N/TT4%WOE& S9Y[<!
M&8 ]#6U=G.=9SFFPDF]VE:_*;X,UV11EF\7--VI[,#NDO9 MC)/ZH)Y&\H""
MMUOT%,V;GI@WSY7'AFH4G<OR%8KC7$>\H=6#3U[W[IN<>3?W-+FC7UF:+74F
MD;;->=GWOU/";^Y9RRZ_:,6_GI9*AM01+N:G<O,DB9*X3:=K&_2G_]_3:*LK
MT.CD(91%9ROUJ4G7=6T%Z4</++<-?05HA44K;!?!T\VT(333HID6S;1>F&E]
M2NG7M28RN?'3'C6CGCZYP,].,*M4]'NT]*J\ECZ:YYHRW_Z,OZ,;56 ZT9_U
MUT?,0#QE(.ON9W7H3\E&TS!N'4(*;,VU!==*K!8VVV.Z9B+.+DD<G3)^LKN[
MY \>9Y3-YQ6V6$.-9B%%E;*=DWN1QT6<][&<4&E$Y')VEG[/R%(^6<Y<JHYW
MRFGV*(0V#4K;IEKW!0-W)V/9-N0[.(^S>%$L!T=RZ=0D.M 7<BS?C7R<-GF$
MJ:A;"R,3XNAQ3=P<DQ594''-\L4R^QM)].X!4ST,@D3S&P9!HG6MY6G/FB6=
MV2RG8\<"=D+:M &.W5AD'A'=J:5CQ\JE;7HL=C(/;=/>1JE9:WAO*(RX 6.'
MF'6VOZC_W,JU37[S_P%02P,$%     @ "'BJ5I"P:V_WM0  /N(( !,   !A
M<'0R,#(S,#,S,5\Q,'$N:'1M[+UK5^,XU@;Z^:U?H<-<NFJMA,H5"%2S5HJ"
M:DY7 0/4S/N>+[T46R&><NRT+T#ZUY^])=FQ$SLDCI/8B7JZ!_!%EK2??=76
MUJ>!-S3)Z]"TW%\/!IXW.OWX\>7EY?"E>6@[3Q_KG4[GXRL^<R >.G58/_;@
M:\\Q^:.-6NWH(]P-'L0;NA$^&W].W P>M:BAN?$G7:8=/MG/'_DM>*?1C+9K
MI':A^=&P7(]:&@N?=_6DD<&S]8__^_W;@S9@0QH\;+QZ5?AT[(6@*X9E&A;[
MW\_WWSYZ#K7<ONT,J6?8%K15;U=K)]5F/?PH//HS?4+Q;N23R:-YZWN-:N,H
M:,1WJ]YXQ":3V*=NC[<2W,&7CJNU>J23KN.EO17>2GC-]QSVE$J SD>X/QE;
MVG/U9F1\D5$XMIDR"GXG:13>R$G&#MZ)06>&*''DX.T>=4/D&*[=:M2/YV%-
M/!&#O)<(^;: O#=!I?$V*JO36/8&OJ4S1[>'+/;V_9>O5P9T_\D]U.QAA%"+
MD>DUD???Z(O.C.1IAQNQ6:>C.,"I.1K0D6-[3!M@=_G#M>:$HDX*/9TX-0&C
MB<"-/:3YCL,L;9S<8G WWJZAI>#)T&(/LE=MD/PDWHEWP_8MSTGKA;@9>P$
M_T3I*)$3\$;L8=USIA@Y1FZX_1%OXSLU9)Y&_>#\TX!1_?S=_WSR#,]DYT"D
M@ Q_U&M_'H+(__11W'KW/_B_3_]/M4J^,HLYU&,ZZ8W)HP#C%P CN;,=CYJD
M2MH?ZS7>-](\;9Z<UAOD[CNI5L_??1HRCQ+L7I7]Z1O/OQY<V);'+*_Z"%T[
M()KXZ]<#C[UZ'X7&^7C^Z:/HYJ>>K8^)ZXU- 'X?'JVZQE_LE-1K(^^,\ M]
M.C3,\2GYYY^^[9T]&D/FDAOV0N[M(;7$Q3,RHKH.;')*:H9%:H=UPSHC  +7
M=DX)]3W[#"9&-YZ#+^F&.S(I-&K9%L-[QNLI=H@YXE=#UYD%O8/?X8D;?\@<
M0Q-#>?7N45/J?^!DX*37ZO+7)A=>%D4>!EXYO;1@GL<7,'B'FM<PI:^_L_'!
M>0W^.3EI-8XZGS[&VE_U>]TALW3XS[LRZ=/!>9^:+LOY$Q><K[PKP]6H^7^,
M.I>6_@5P<W!>K=8;\'#.W_MB:_XP]L$KN.(>G./C:_W6'31AZ_)K_TH=UY5#
M-53=Q !C1#LZJAW$/FO$ON5;AKC\X^%+\&7)]J=7AH5"^!L#/?7-H#V0^M[X
M@&!7X"EH5E@)T.2K=VKY0]WV=*890PKL)'\!*5%M KZ"O@9]2^EL&^7,0G,4
M]OO.=]ATQV%&>LRY[=^.4(( #SZP)YQ&=^G.7]]< 6$7['VK<9S0^\:D]PT!
MR#]0R^F^R6[[ER">O/%WY@UL_=IZ9JZ'_9R]RM@-C+#[:KC5WZ@SM"VXBV.<
M3\#DUF^] 7,>!]1Z9,.1[5!G?#T<4</!>VNE;@MMR 6HN[?S4V^GL^H?W]@3
M-87\GAWG'P\>B#SLX5=F/SET-#"@G_RYZYL4;@$U''+*@V<[S+V']YF>C4GJ
M"P^RM=U!WKY86<?87'B,S4V.<5KLB7%F&V)KP2$V6R=Y2.J' 7789] O^H4]
M'#'+Y4YGUP$?](G/PN?QY)$[.L9+W1?JZ%? D/^FIL^ZKNL/1_B6>_DZ8AH
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
MN"1=_E5JO46TA3V5TEB9B<2XMG0,EX$--R;:@&D_T;S^":J"\= AFI1.Z-&
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
M#N^<:L?'(*;F/G!R<'Y8JW_ZB ^=RQ]XY"IYIJ8/_4Z6M(O%NKB@2)*UMO6
MO>?WW:[O#6P')DE?VN*[OKE*L4!/%HMJ;*:'[1J:I"EFZ?01Z2[_)*'A-\^2
M:7"RF-.WV AO?<_UP ($M9=MB/5&I=YL5]KMHX1#W\&R3!["8F["YH;0:!Q5
MFK6$(4BBV)-OR*/LOU-'&P3GV#?Y4&=.M\>CC-T1@Z:>F:E.,EYAN>PD<^)H
M!"[_1L&6*0>HH=97RP:8S"F;^0"F$"ECA7,@-KHYX)YYU+"83AAU+!#<)8I;
M%Y"?,KO8 1DN)16ZFN8/?7[&-Y8?UXQL*2^@L^N%2+%3*%H"19GS,M>&HGIC
M1S;7EM/;#3?7!M0DMC< $UJSAR.'#9CE@NU,3-M56[L*L_+S/IFW,^=$1JA_
MB\2_B-)>Y!A\ P#<,.^V_TA?,S Z<6&B?CVH8CI_LUVDLU\_*#@7%,Z9$S0W
M"^?629'V@WW8=]<CEC/C)JR7E,<)V2$63^;PS'F;/#@@Z2J*"&8R/FN5SLDF
M7!B51%,N8'8R)V;F!LSCMJK=76C58DY5-BVYJMFOZLF=/-(VNY:>$[NKFM\*
MM8N@-H_<SCQ16X)JX._@9\_6Q]@GK )X#A=TX_G\W;MDA3'=G4EO>&=BRD+J
MB@A0_NN[GM$?GTGM$>_7:),??5__P%?^^[;M6;;'R.O0/#6I]?3K ;.JOGO
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
M)_%(5(-!=U^YL\==3Z&UW_1 5_8MTXW%'%H"5, ,6K\>'+VM)E;:@I;N(6=
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
MEW47RR0.>[L]%I='*_%UGQWB]+T1T9A,5#4L1;KRD2[(G5&T*Q_M8ID@.T1
M92$I"VDS++RDA;0U3A?;)M;$XHG;G'99<)>%ZMVA[5N>HOI^45WFY"NR[Q?9
M@^1U1??]HCN>#ZYHOE\TYY7^BD%TM5M]LEO]"]/X1HH@N[9>G@WKQ:N-?M)*
M2/^O5^N-<FPP;U;J]7:EV:IONSYJ<3&7U/<M[!%/!6![+0!<W][O9B$.;]D=
MO&VX\O-)4D6-Q?"VR]NR%>#6!KBDXA:+ 6ZK.Z9;)R=*T)4"=VF;F9,*4"PH
MZ0JYF?GDJ+/ED[$5&+,*P:2R$1*+&Y%G]<IQNQ"G):WNR>_*00HWS"O=P0G;
M=.#5F;N*"B6C@CI_>J>ID*SK.TE5U!N3VK:-M56+ HTBC%-<K<EVGF*[&&?S
M*KPM@;>D>N1+XRTGEV<A"*H8SPZ@+JF"]RSJ]D5@[?$"Y91;(W=)N.BW$H>-
M?$<;X-'RA%HZ_.T9CCI??*6X5B?I..>EY7VV \;O)_3L6OJ]H.;L>>,95S./
MMW348PGB6T7$X?&Z<9@6#GL3A?P(TBSZ9$NZ9#< N.D ?R?I>.7E#=\55S77
M!\9V6Z&Q1&A,.E)Y(V[_FF%XU%'+3D7$82(,&[5:@:(!.2 S.58P611508-"
M@C-92#9J2><5+QLU6+.\.VYOHASS/'FGUDB#8 (G=;7'XP=XY#P((,KAQ%[Q
M=[5RJE:+%!5VD0J;MIKR64/)[DI.SJ)T'^V4=GALC<O"BX@HO&?0%=?PV -S
MG@V-">UWSS3[R>*ME,[_5#!6PJ0<5$@1)KD$Z'-RP;8E6-0:[PX >;$(?S$!
M6'S-IM:, S>/[S3F#EXHX8C)=YR7Q;W+[\#V#9U1F]K!G"V+;*>3*T*OG] I
M,C^798PE5W73#)PKVV$P-Q>^XS!+&S\Z%%0#[VW7TOE?)M<4$QUSP[S;_B-]
MO;,=?L/S'*/G\[.>'NT[T#*65S"+13'(AJV=%1FDGL\"2_90@6(6Q2RE89;%
MUGO6L"BNN$1Q2?&X)&59M-XH4,2H$)RSV.G.[68ASG:NE^9LYYUGI,7V7BD&
M6"L#[''^PMETM;;I@Y#+&M!*/U>]*(&.)4]^;]232K^M:?/$&DJ_-2J=UB9*
MOV4[-[[ P%X!2%NH&[<RRI/JRZUO:T8.]>4VL0E(@7HQ4&_(S%L:U$E%[#:S
MW:/(1>P4JLN-ZJ1*>6O>-K)Z9:EFI5G?1&4I!>Z2@#O--4\JQ[?YW2CYE>,#
MT&^G]D B*Y0C_K2KF$^!?%+5O\6WN.12Q;2^B<U[V62S#!.]@Y\]6Q]CGS R
M=@X7=./Y_-V[Y##-+U/]^661,P]B)QP$W1BE?B-S*"B*0HP"&OWQ='SH@3%"
M-4QVHM889HW<V!Y\R[/)A6WIN*M%Q]]XV!-%'KDR+&II!C5)*"9=\OZ'17TP
M99G^X7#>2*8'LL!<1<80#&$R?6'F5GMV*H%J1#.I"^B[^_KY]X-I8-5J_TCB
M,GF%,RV_=' ^U=;-C^]SC^2(?2"94FF$/3AOA7 ;A.'*N^[7R^KG^\ON[]7N
MU>/E_2FAY@L=NX%(0();;.K# R9&T$#TRVCFWVK\GZ1 I[QU0#Y.#_>W+_>)
M<S<U+X-^U;%?9B]JS#3)X^W%-\/ZF3AM./=Q5(;'!'8.49;JACLR*<R689E@
M5E9[)HBC"+7Y?(73MF"7#A(9[9]_^K9W-D45<;$BB%4A+G.,?@)A9\?$'WF1
M=.B!_,PTS*XY&E!RY]CDD6F#"OGFZ8?Q04]/P28$%7XJ1H"U?98?VIDHBB("
MR.Z3"W!QR95IO\3$47A23)2A MZH+\4;4PP6Y[V L$T42(*+-D6&=Y^XII(=
MXCH9$2[58/BW.Z):^+?@A;YA/>*KR;)Q.=$E\&\@H;C<?.6K&WS=1>C3=9^Z
MF=_13"4X@'QZY2@F5^83;HZ,.XN<MW1E.P3<&_(X<,!$^ XM#%QR">2=/?8X
M?1%K-7T_]SRH<"EK@V="9<^9+PFV"W'6V#8.& -7J+DE$"E:YB\<Q.IV">3"
M1O?2'-?DV=@14^G*L8?D=L0<ZJ'WUP6'_-GP#.:>YG,L=YYHS_G$\#(TN/>3
M5[#L'74J0Z:MAO/"I?7&9O>1-I*R\IJ3K+SF1FH%M]N%J!2L8)091HL5Z5 E
MI[=C\@1FFNBQD*:1S=\8X'88T$\S3$:L4,SB=?Q+0PO)QXB381$[-(]HU#PJ
MDG97+>U*2_MJ\#2.1_-JK)7'_EFDT4WKJJ0:,,N:/#Q5^/-T68Q,=:T+H;$4
M@I9!4![%5_)#D"J94@!1_86-P(0R.!'Y>1ITB#N+_E+R>F5N2ZHEOZR\CI('
M?C>9W!O6C5 ID_1N;66;EQ+?JP!JL3HJ6P)4O1#VP)X;WB*Q#]U=Z0G;?4"#
M%LVWH/V^80+]2Q2,W"HOIN0>-Y-JMBPKW2=A(US!$<3[SKR!K5];STQ&.3)%
ME&KJ@(52H2F/(O9K0U-KVV#:<QM]LK)K,G"\@DKU%1[D! E/-<UAREY?T;QJ
M)E5,652BTY%W&I+I&U+I4A")UVOH!@3*9%DUCXM@62DL+8.E58J&K!-+C9,B
M8*E@5OK4.I.4NA<#:CW!B_&U(]=EGLL#)6!$]\"25NM(JJ4"KR.5T_!I'HFU
M7DV# 0&_.4QCQC-FN7.C1]DY*SD;2>=L9W!='51-7YCX>6T%Q+H/:95%0S4K
MM49+^:YE@M-B9U-L"TXG]6W#J6#63B&$N,/XWGNPO!QOK,3Y*JY&TJ+NZM+\
MB\\PBG0OZ'0'9#(R',(>+6YP<E2(]5X%KJ6$^V('8F\+7>>-'9#NI3;1,;1L
M>;8#]%-B?!4QGK2XN[H8CY!G)>'=K*E\@;)!JK78L1+;@E2]4CO9TK'(A8Y&
M;EJ"WSEL1 T]6%528GPEGDM:R%U=C$L:R76 U=BNLXEJJ$J2YXJJQ0YSV"*J
MCIL[(LI+;8R'H981'?-J,CRA5],<G\76JY2(7\4G;N6Q]S0]X'DG:(<YF8)R
MWR:$6Y%'MY1(H +KV7"6Q^;4;>!L!V(RI;;H><Y(.>5]?L<)K8M=5SU/J+6>
MU==XPE# RJN5(VXTMY+XJ0[#*C!ZU[/8NQ;T-K9B[JS_)*L4%R4!5$6\M*^Z
M>5(+Z,VR%$I=%TC@Y;&\#E3':FUWCOULZ$S_//X!U(](O4G!MA4CZD>=0LH\
M!> M CB/%?R- ;A^7$B34RGM@BGMA/J78I.;JG]9O ;W?O+V=5E"V+QWOJ,-
MP*WC!?Y'#EJ\WI@O3; _?6.$VU*5Q5L<@Z&=Q\[V.SKFVXT?[:X&1';8G:3[
MG0FHZ5KZ94#Z3%E_)X6T$A1JMXC:/';0KQ>U]>9^':V^=:MU4[9MF97S3$#*
M",UH%9 JI*!;I4S!&_Y\Z$+EY,\K/:W@.PW?52HC;!B^2F$7\E+A%'9",$H>
ML*F"485K<.\GKW"QW,T&HQQ;8TQW21_9E+TR1S-<7B?1Q:+EQ!ZAB"^1Q5O
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
MKDK]))2/!D8^C6&PPPD,7<,2BPU\N80K5R9EF(''WH]LQT.7P@_B)F=@T;W
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
M%#1,WK_1!,A6?N!FT(80J%RYS7^Q?7 .3!B\AGUF.M@\<N,#CM+NGY+W]0]
MOA0].:<2U!\1Y3>KBOZ0<NO6D3MTI3:,S/%G:0U.6S'!^<=?F?T$@FJ [AA_
M^_HF6NP")(+#KFS;FU9S79!^&)6&SKG8%K0_ J]NG+$V;[.3O-G:Y1V EFQO
M8MBB/(D#:<;F/2/O&W-F?$Z.U\HS?L%%9I"L [;( WL1! "CFGF4;R>38F\B
M]:30*RAY&LD+78N21VJ1(%M1:$4^*TBP8%KXL=Y2'8PFZH"*F0&*-M,IVIB3
M"9*%HN6G62.E?$&49*'\Y9;&T@1!,KYOS2'*G"7;E=GLME\2T=9>0+2%A'@O
M%4@"$P7#)0]H8(T#\RCBYG=-,[3.7-";0*L>8Q;I<[=*J.] OW(_W+(GUH,[
ML3VDG;9)PRMZO#T8+,'>M[NOGW]/#C;.1O/CV^+@$@8V8VU=/=[/W7\0^<#4
MNX-^U;%?9B]B6)3<?;WY\?WMC0T+[[\[.#^1\>'XCW>?!F$$]:[[];+Z^?ZR
M^WNU>_5X>7]*J/E"QVZPJ('I+1:+#>F,#)C<,H@A>[F ^K<:_R=I;57>.B ?
MIR?RMR_WB5199M8>;R^^&=;/Q'E#JL83<\)3M3N''1@)"B9PH4[!OC/!AZOV
M,, =P51\VA;LTD$2SE>)QI+9,?%'7B0=>F"+9QIF4JAQU4&KV4X;)@]1H4MS
M8>/B!OK\%]%8NHQ:@5T3JAZ7O/]A45_'R.B'1&86/[A6" 1?C,$#7JTOQ:M3
M#!^7!<'0F^A^"JZ.BMUL^^W3UED35CN0)E&Q/SWX;<7]L4Z'HZ.&%%JQ^W!!
M3NJU2H3*8;A#JD;N >._X(8S7G<#U#66[@B*/F$!#^Z HHKG_4,C*HAV3VZ'
M4?-_7U^Z8<C\D%SQD(GMLMD6>0$0'JGI8S\(OED).BTC.ORQ26\!NSK#T#_
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
M>";+&Q,LN6B>-$F%0:6+G#7+P-=%3*>9TVBU2D+ZJ7"&8ZVWOAA \7G?Y%G
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
M?NIVZJU.64+W5-;Z$XQTP+VPUFF$5=9O[01Y['"Q3]D$JRP;>QI*RI<!EB6
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
M!F"N,@,CJX)+,?CZI\>-]%;V73LN3#NF%_.-D"Z 0*R(5Y12\D5PAY221@(
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
M"$1(3*PBN<2:.E.JGYBB$)%Y&?RZ>.Y4N3$4)J2+.%G)$*N<BX]J\EU(Q3O
M-L<H?!%'I)_!)5Y@&T0-7*1@0G;ASGMJ8$RIW8(8G3K,RAD!%:!4<1,$%"KH
M<2*2I'9^67<ZSA!"R9UM)\A?&&F*E3RZ^1G][+=^_R+#?))U$MADDW-[0#YI
MC!9FSSA.)\J?15'T3"UEAL(79STT9?-+LTFG[,@@3#Q,9(]0MFQ(EOS(DC#)
M+DU&WMTKD;R*)I0O:2+P'32^W*P1M+K8U*\)2X6R3+.MP QM)T[H]Y&'&8"J
MG% Y&D*)ES*_79&^'UUY06HQ)A%;&,;4BT!5CBG12_;BE+WNDLR$B7,(HU/%
M,B@=":0,S"3<3IB[ARVM\17J:)7@DH7E[!#!S?;-/<T!^U#&NE'J4/1JVM.,
M8##Y F_!44IM$TV[B;3=AE3C&AGLSE4ZF2 <.*SPRGA9@6B8MZERN&WWP[TA
M!@/:;%U%2O,VV17=7PIEC05#!K7&4*U9:Y<@S*H^68?,YJ+DVQH[-F==%LSK
M .4?W 'G_SB]_,?9Z9\'*N'S,3ET67ASU<M A*KF@SIKAE/4"'-9F"*X]4"3
MR5"BD)[01QF/V408S!3R$D&#Y4N6LAQ2-EA4LB<FY!\AWC*\CIMRDA!0D[DE
MP0.<[&>342; T!=.$(7AQ%8I_D#],&FLV'.&(B6JAWD(E\D_P,9804+55#@1
MN0H_#HVY"F-N@]3C3J.J<!NXF@(BA'DO'&1"[U\L$M7L6%!E&T>X1[YKR%8E
M:O*'HL4)E[D@DGL.H)%_#Q?I+4'T.R#%#Y$7%S8/HZ]3DD88*KH+,Y*-Q0WC
M,UEOO+>TLY_4>5WQ><DG;'4;2?5[G6.T5?-L,$W36-Q%SI0MY^QO5#P51DJ*
MQK, !@*:LX D1](<<F83UB@RH$V&%PMO06@KB<W@;F\\N8R3C TN,C;H2S98
MLJABWKG!XE7J9)+E8\?CD'M'P2+!)!R-\((;.E,*U]V2%D<(@W<8P!M%X?"[
MU(6< 3S@)/%;&WV#@KK221^?0]CFGO#=C39E+M-Q:NTR':=,QRG3<?8@'6>3
M5VB"OIY$Z3D:8S:O&N4U-+@,O/!HU1.LPTEM"C0]C^Z W!!X1S@!-L1$'[5
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
M(^H8YTRM1E8\5VM6VM+8JC<?;FK5:P]U(VD9FY=%3L*>5]6D(INP:RYP1$W
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
MNS[ 4M[+B[SDQI(;#U&!D-#4>Z= /*-1OB^4,\^&#6!#-TRIZFQ')<7R*4I
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
M AQ/T-&*67R[E;35SA9=P#R@-@H)LB6#E1FL $OYR51Y1>-KJ3;V[2P!=_F
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
M?^A,Y]%Y.;%K)U@UX'82L9-:>F<@$A]&^/FH)'[,E/PB5'4"/5,^^I^GJ'4
M:W>P=?1_=[#EKQV3VB=$4[4B\6SR<BI<Q*P[Q.9SN]^):1P[8*>-G83#/@%-
M9IET3HAOA 8]C8";\A,)^WPCVV OE-B2TN.3]N&URQ%?2PGSO7LI\]@?5.^T
MYU<;J;V;?'YUIK"S0YI_UP=@I$/96 I0I@IE)^=((\&_4&P:=GH^.O5[5']O
M6E^VW(F(U9%/.,A>(' \044K)OJVE+35SA95P#R@-@H!LJ4)*S/, F;*#Z:*
M*Q9>2[7:M[$$W.0#IC/$N*F!S$2@@_#*"$+YZ_^*>5$($64^U&HH*$[,>;]Z
MB\%48BJR0NFQ0.YHH(."\AN\!@\?)(B>BT;^)(8\ESX"TV_2NW"S!*>4AT;L
M#5\1#-Q5(G456JL4_^IE_8KAK/MX*%OF7,XBOU0;_.:[^[\+NZ3CIW('*[S%
M^?[LZGPN#%QU:@X/'W!N*OG9[6GG=(;$XIKY*R%F^KWM_8C1WYTNJW!;8:?R
M_I_Y&*U$[&#_X/"NH^CL/^L5#O1O_KSW<C_K>7KWK_OSX.CI>;!F$SCY]]<&
MZ/;LWNPKXO>=XLY#3O%L5%G%%(O^G\+3*</R0/?)7/!]C7A@#WK/F5@'&QX3
MI>M&E38J>V3-7HNPK/4)Z^43U@JJ,ZJ_:6+?>K#6@[4>K/5@#0\VD")E'R;G
MD'\/-X6M(VL=6>O(6D>VQE"=<63;%^%E5_BPJ3>C*\FSZ?NPE7/[YF76G^W=
MUN*>9Z:+1_W^CD0.6:RXM6^W?CW[Q]7NQ=G'\]UWE^=G?Z.O7&GD7GS\<'4Y
MDS9(=XT>S2?2[0Z[^/C;'Y^GO:$$RBWZ@!5[],4OIR=[_IMB_@M02P,$%
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
MG31,-FTUJ=645"8"<U+"%"I=$R8P'5DJF9QQPHS4(T5C0ZYEI@GG:!&5:M2
M$Q&R'5O)6<%,)6C09XEIHTU<->'IWLB(JL1GO*"@-V_^=C[>S(<F0TZQ@G(>
M$=]G8G1>P%6%9"2.B/<RLDPK!P\3J1L+B-)!*Q62!3&F:[!$14_,UZ'Y4GZ7
MZZ3(::"S5B<;27YLYOHQMP#VFEJM&XNQ; S[N>%'<T7Q",_UK&4T WSR+C.P
M/L?+"]&_(7?E$G5INTYZ83/ 2MK_$6IJE35R T.I?*J*0ZFU'.-@] RQY QK
MVFAXB%=R\S[:- IGG[.$SELR17-I)[4JJY7R6C,NE_^/@3C=ZJR_^+)RSI^L
M<W=^S9Q'/*6X]*J!W\A\QZ-JI5>1MROZJTEPK=5U51!;6(Q6P[!6W6_D;LQ)
M9==P_;3*.=>-OW7'M9%9^#^N"1N5J@N-;4K0KW;)W]6Q71W;U;%='7M5QY;_
MT[#)Y6P?C^;>W3;=C/PO?/CL$3Q.XOB\<&,/W&+/OG:*%WW'_L,\.30WV[N^
M<OL+8V%05/+I]:"Y6PJ]Z[O[VQ=ON +7+3L@BI)Y?JG5+"4///T-4$L! A0#
M%     @ "'BJ5L7>9%:\#0  #J$  !               ( !     &%P="TR
M,#(S,#,S,2YX<V102P$"% ,4    "  (>*I6&NV'*_4)  !3?0  %
M        @ 'J#0  87!T+3(P,C,P,S,Q7V-A;"YX;6Q02P$"% ,4    "  (
M>*I6&C#O!W@M  !%"P0 %               @ $1&   87!T+3(P,C,P,S,Q
M7V1E9BYX;6Q02P$"% ,4    "  (>*I6F;QDLRL[   ]-0, %
M    @ &[10  87!T+3(P,C,P,S,Q7VQA8BYX;6Q02P$"% ,4    "  (>*I6
M@OLM42$P  #I;P0 %               @ $8@0  87!T+3(P,C,P,S,Q7W!R
M92YX;6Q02P$"% ,4    "  (>*I6D+!K;_>U   ^X@@ $P
M@ %KL0  87!T,C R,S S,S%?,3!Q+FAT;5!+ 0(4 Q0    (  AXJE8WEC 9
M( @  &-%   -              "  9-G 0!E>%\U,34P,38N:'1M4$L! A0#
M%     @ "'BJ5D(A;+ <"   ,$8   T              ( !WF\! &5X7S4Q
M-3 Q-RYH=&U02P$"% ,4    "  (>*I61(]#TG0$  "$(P  #0
M    @ $E> $ 97A?-3$U,#(R+FAT;5!+ 0(4 Q0    (  AXJE9*",[P6P0
M /<D   -              "  <1\ 0!E>%\U,34P,C,N:'1M4$L%!@     *
-  H <P(  $J! 0    $!

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